问个小问题。。
在使用timage控件时,如何知道它装入的图片类型?比如bmp,jpg,png等....
[解决办法]
只能查文件头了……
[解决办法]
判断各种类型文件标识位,bmp是以$4D42开头的,jpg是$FFD8开头
[解决办法]
网摘:
如果只是判断BMP、JPG、GIF图片,倒是有一个简单的方法,用数据流判断,因为BMP、GIF、JPG格式的文件流有标识符的,分别如下:
名称 宽度 标识符
BMP 2位 BM
JPG 10位 chr($FF)+chr($D8)+chr($FF)+chr($E0)+chr($00)+chr($10)+'JFIF'
GIF 3位 GIF
通过这种方式可以判断。
当然通过DELPHI的系统的类也可以判断,用ClassName函数,但是不能判断GIF类型。
例如:
if Image1.Picture.Graphic<>nil then
Edit1.Text:=Image1.Picture.Graphic.ClassName;
[解决办法]
TImage在设计期装入图像后就保存在DFM文件中,不可能得到载入时的完整文件名,只能通过Image1.Picture.Graphic来判断其对象类型,比如if Image1.Picture.Graphic is TJPEGImage then
[解决办法]
如果是设计时加载的,一般只加载图像信息,文件名不会被记录,所以不可能得到了
[解决办法]
[解决办法]
Image1.Picture.Graphic.ClassName里面可以看到加载的文件类型。