奇怪的问题
IMAGE中怎么样显示从数据库里面读取出来大于32KB的图片?
偶从数据库里面读出的图片如果大于32KB,那么在下面这段代码里面就被自动保存为32KB的BMP文件,请问能不能解决这个问题?
Procedure Tbiaog.InsertPhoto(FDName,TBName:string;DataHouse:TDatabase;P1,P2:TPoint);
var
MyBmp:TBitMap;
begin
Photo.Left:=P1.X+5;
Photo.Top :=P1.Y+5;
Photo.Height:=P2.Y-P1.Y-5;
Photo.Width :=P2.X-P1.X-5;
Photo.Visible:=True;
Photo.Stretch:=True;
PhotoTable.Next;
Try
(TBlobField(PhotoTable.FieldByName(FDName)).SaveToFile('c:\temp.bmp'));
Photo.Picture.LoadFromFile('c:\temp.bmp');
except
on EInvalidGraphic do
begin
(TBlobField(PhotoTable.FieldByName(FDName)).SaveToFile('c:\temp.jpg'));
Photo.Picture.LoadFromFile('c:\temp.jpg');
MyBmp:=TBitmap.Create;
MyBmp.Assign(TJpegimage(Photo.Picture.Graphic));
MyBmp.SaveToFile('c:\temp.bmp');
Photo.Picture.LoadFromFile('c:\temp.bmp');
end;
end;
end;