问题:程序中picturebox.picture中已保存了一张黑白相间的24位位图,现在要把该位图保存到指定目录中得PCX图像文件,请各位大虾指点。
相关资源:http://www.aivisoft.net/Source/
中有实现PCX图像的存取方法,不过我用该程序打开单色PCX图像无法显示,另外其中代码很多,我看不太懂,给各位大虾参考。

解决方案 »

  1.   

    没做一位、四位的编程工作
    前面的rle解压过程你就不用看了,从后面的根据bits解码的地方开始看,黑白两色的编码是按照二进制来的,而文件中是取得的byte,所以要用and运算符逐位分解
      

  2.   

    这有一个例子,不过也很复杂:
    http://code.ittoolbox.com/ALKO_291064/code/Read&SavePCX&TGA.zip想编码量小一些的话,可以考虑用imgedit控件或者gdi+实现
      

  3.   

    太感谢了,rainstormmaster(暴风雨)现在可以保存PCX了请问,怎么保存2位的单色PCX
      

  4.   

    老兄,2个贴子都等你帮我呢,帮我把那个源程序里面的savepic类改改好吗?让它保存2位得pcx,求您劳驾
      

  5.   

    对不起,要保存它是1位2色的pcx,求您劳驾
    另外上面的那个源程序保存的24位图,用ps打开报错,是图像格式不对还是ps问题呢?
      

  6.   

    可能是rle压缩算法的问题,我以前写的那个pcxread.zip的rle压缩算法也有问题,不过现在改好了
      

  7.   

    thirdapple(.:RNPA:.陨落雕-最近很有审美疲劳) 
    那你能不能帮忙写一个单色pcx保存的程序呢?求求求求求求求求求求求求求求
    我现在着急用
      

  8.   

    这几天我接触了新名词(我比较菜不要嘲笑我)就是“图像抖动”,哪位大虾给我写一段savePCX(保存单色PCX)的模块呢,斑竹帮忙!!!
      

  9.   

    没有光盘?那你的imageload.dll从哪里得到的?我是从光盘上拷贝的,包括imageload.lib,imageobject.lib,imageobjectd.lib三个库文件.
    如果只有DLL的话可以用VC附带的lib工具生成LIB,在VC98\bin目录下面,命令格式大概是这样的:
    lib /DEF /NAME:imageload.dll /OUT:imageload.lib
    不带参数运行lib或者lib /?的话会告诉你有那些参数可用的.
      

  10.   

    回复人: admin0594(无巧不成书) ( ) 信誉:100  2004-09-03 18:18:00  得分: 0  
     
     
       没有光盘?那你的imageload.dll从哪里得到的?我是从光盘上拷贝的,包括imageload.lib,imageobject.lib,imageobjectd.lib三个库文件.
    如果只有DLL的话可以用VC附带的lib工具生成LIB,在VC98\bin目录下面,命令格式大概是这样的:
    lib /DEF /NAME:imageload.dll /OUT:imageload.lib
    不带参数运行lib或者lib /?的话会告诉你有那些参数可用的.
      
     
    看不懂,呵呵