求助:图像格式转换问题,谢了. ( 积分: 50 )

  • 主题发起人 主题发起人 wei0916
  • 开始时间 开始时间
W

wei0916

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个BMP为32位的,现在想转为24位或者16位,有没有办法用代码转换呢.哪位帮一下忙,谢了.
 
有一个BMP为32位的,现在想转为24位或者16位,有没有办法用代码转换呢.哪位帮一下忙,谢了.
 
var
bm :TBitmap;
begin
bm := TBitmap.Create;
try
bm.LoadFromFile('32bit.BMP');
bm.PixelFormat := pf16bit;//or pf24bit
bm.SaveToFile('32bit.BMP');
finally
bm.Free;
end;
end;
 
没有那么简单呀,bm.LoadFromFile('32bit.BMP');这一句跟本不行.在加载32位图像时就出错.提示无效的BITMAP.
 
晕,楼上的真实在
把'32bit.BMP'换成你的文件路径+文件名啊
 
诚聘 DELPHI程序员 工作方式为网络兼职 从事游戏外挂开发.

详情见http://www.krlm.net/zb.htm

或联系QQ:411698
 
to:啊啊啊啊啊,我说的加载出错是由于加载的图像是32位深度才会出错,我将原来的图像名123.BMP改名为32BIT.BMP加载总可以了吧.但是还是不行,也就是说,DELPHI里的IMAGE或者TBITMAGE加载32位图像时会抛出异常.并不是楼上所说的路径名的问题.
 
IMAGE.pictrue.assign试一下,如果不行就是你的bmp文件有问题,可以在acdsee中转为其他格式,再从其他格式转为bmp格式,再试,一定可以,我用IMAGE.pictrue.assign基本上什么格式都可以,关键要把各种格式单元放在你的单元中,如:uses jpeg,Gif,等
 
也不行呀.是不是一定要通过代码转换呢,32位格式的图片,用DELPHI的OPENPICTUREDIALOG对话框加载都会出错.倒底要如何将32位的图像转为24或者16位的图像呀.高手们帮忙呀.
 
ImageEn 组件包
 
能给个链接吗,吗里有下呀.
 
http://www.2ccc.com/article.asp?articleid=2656
 
用一个浏览图片发现这个图片格式虽然为BMP,也就是WINDOWS增强图元文件,在DELPHI里对应是一种叫METAFILE,这是一个什么样的格式文件呀.怪不得用DELPHI的IMAGE加载其就会报错.那么我现有在办法将这个METAFILE转为24的BMP吗,哪位帮一下忙.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
swish
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部