T tscc Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-21 #1 请问大家,我从数据库中将图片读入到STREAM中,但是显示的时候不能识别是BMP文件还是JPEG文件,所以显示的时候出错,请问大家有没有什么办法解决
H hfqxfx Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-21 #2 读入到Stream后判断文件头,然后设置相应的格式来显示
H hfqxfx Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-22 #4 hd: string[2]; Stream.Position := 0; Stream.Read(hd[1], 2); if (hd[1]='B') and (hd[2]='M') then ShowMessage('BMP格式')
hd: string[2]; Stream.Position := 0; Stream.Read(hd[1], 2); if (hd[1]='B') and (hd[2]='M') then ShowMessage('BMP格式')
R rtl Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-23 #5 先读取文件头,如果是BMP则用TBitmap,如果是JPG则用TJPEGImage ------------------------------------------------------ http://www.waibaoinfo.com 外包信息网
先读取文件头,如果是BMP则用TBitmap,如果是JPG则用TJPEGImage ------------------------------------------------------ http://www.waibaoinfo.com 外包信息网
L levi Unregistered / Unconfirmed GUEST, unregistred user! 2007-11-23 #6 还有一种方法,就是读出的流用 tpPic:=TImage.Create(nil); tpPic.Picture.LoadFromStrema(Stream); if Assigned(tpPic.Picture) then tpJpg.Assign(tpPic.Picture.Graphic); 这样,不论JPG还是BMP一律转化为JPG处理显示,这样就不用选控件了。
还有一种方法,就是读出的流用 tpPic:=TImage.Create(nil); tpPic.Picture.LoadFromStrema(Stream); if Assigned(tpPic.Picture) then tpJpg.Assign(tpPic.Picture.Graphic); 这样,不论JPG还是BMP一律转化为JPG处理显示,这样就不用选控件了。