这样写会出错!这怎么读JPG呢?

sgw520 2009-01-05 01:17:16
这样写会出错!这怎么读JPG呢?
var
F:tmemorystream;
begin
F:=tmemorystream.Create ;
f.LoadFromFile('c:\b.jpg');//换成BMP的文件是可以的.
f.Position :=0;
image1.Picture.Bitmap.LoadFromStream(f);
f.Free ;
end;
这样写会出错!是因为b.jpg不是BMP,所以不行.这怎么通过流的方式读JPG呢?
...全文
94 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
huayufei 2009-01-05
  • 打赏
  • 举报
回复
7年 2009-01-05
  • 打赏
  • 举报
回复
uses加jpeg.
gzmhero 2009-01-05
  • 打赏
  • 举报
回复
google搜索一下不就好了么?

// 用到 jpeg 单元
procedure TForm1.BitBtn1Click(Sender: TObject);
var picstream:Tblobstream;
pic:Tjpegimage;
jpegStream:TMemoryStream;
begin

table1.Active:=true;
jpegStream:=TMemoryStream.Create;
(table1.fieldbyname('picture') as TBlobField).SaveToStream(JpegStream);
JpegStream.Position:=0;
try
image1.Picture.Graphic:=nil;
image1.Picture.Graphic:=TJpegImage.Create;
image1.Picture.Graphic.LoadFromStream(JpegStream); //读Jpeg
except
Image1.Picture.Bitmap.LoadFromStream(JpegStream); //读Bmp
end;
jpegStream.Free;

(table1.FieldByName('picture') as tblobfield).SaveToFile('d:\aaaaa.jpg');

end;
window_8888 2009-01-05
  • 打赏
  • 举报
回复
image1.Picture.Bitmap.LoadFromStream(f);
这句话有问题.
是bitmap.load是bmp流形式.
你存成文件,再loadfromfile吧

16,742

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧