Q qiangyao Unregistered / Unconfirmed GUEST, unregistred user! 2002-11-06 #1 我有一个数据文件,结构固定,其中有一部分为jpg 如何读出,并显示
胖 胖的 Unregistered / Unconfirmed GUEST, unregistred user! 2002-11-07 #4 var dat :TJPEGImage; ms :Tmemorystream; ..... 构造ms,dat ; ms.read(); //jpg数据读入流中 dat.LoadFromStream(ms); dat.savetofile(); 析构ms,dat;
var dat :TJPEGImage; ms :Tmemorystream; ..... 构造ms,dat ; ms.read(); //jpg数据读入流中 dat.LoadFromStream(ms); dat.savetofile(); 析构ms,dat;
懒 懒虫007 Unregistered / Unconfirmed GUEST, unregistred user! 2002-11-07 #5 procedure TForm1.Button1Click(Sender: TObject); var tempstream:TStringStream; tempjpeg:TJPEGImage; begin try tempstream:=TStringStream.Create(''); TBlobField(Query1.FieldByName('Image')).SaveToStream(tempstream); tempstream.Position:=0; tempjpeg:=TJPEGImage.Create; tempjpeg.LoadFromStream(tempstream); DBImage1.Picture.Bitmap.Assign(tempjpeg); finally tempstream.Free; tempjpeg.Free; end; end; 这段代码的主要作用是:首先将查询结果中的JPEG图像格式数据保存到TStringStream中去, 然后设置数据指针在TStringStream中的位置为0;接着从TStringStream中读入相关数据,并把它们赋给TDBImage.Picture.Bitmap, 这样一来就实现了将数据库中所存储的JPEG格式的数据转化为BMP格式,并在TDBImage中将图像显示出来。 最后将TStringStream和TJPEGImage这两个对象释放掉。 特别要注意的是不能在设计阶段设置TDBImage的DataField属性,而只能通过写代码的形式在运行阶段把利用流式数据所转化过来的新格式的图像数据赋给TDBImage.Picture.Bitmap。
procedure TForm1.Button1Click(Sender: TObject); var tempstream:TStringStream; tempjpeg:TJPEGImage; begin try tempstream:=TStringStream.Create(''); TBlobField(Query1.FieldByName('Image')).SaveToStream(tempstream); tempstream.Position:=0; tempjpeg:=TJPEGImage.Create; tempjpeg.LoadFromStream(tempstream); DBImage1.Picture.Bitmap.Assign(tempjpeg); finally tempstream.Free; tempjpeg.Free; end; end; 这段代码的主要作用是:首先将查询结果中的JPEG图像格式数据保存到TStringStream中去, 然后设置数据指针在TStringStream中的位置为0;接着从TStringStream中读入相关数据,并把它们赋给TDBImage.Picture.Bitmap, 这样一来就实现了将数据库中所存储的JPEG格式的数据转化为BMP格式,并在TDBImage中将图像显示出来。 最后将TStringStream和TJPEGImage这两个对象释放掉。 特别要注意的是不能在设计阶段设置TDBImage的DataField属性,而只能通过写代码的形式在运行阶段把利用流式数据所转化过来的新格式的图像数据赋给TDBImage.Picture.Bitmap。