اره عزیز ، همینطوره :)
ولی به این دو مثال هم که با استریم نوشته شده توجه کن، ضمناً برای فایلهای jpeg میباشد:
uses jpeg;
procedure TForm1.Button1Click(Sender: TObject);
var
Jpg: TJpegImage;
Stream: TMemoryStream;
begin
Jpg := nil;
Stream := nil;
try
// Create a JPEG image and load it from a file
Jpg := TJpegImage.Create;
Jpg.LoadFromFile('test.jpg');
// Create a stream and save the image to the stream
Stream := TMemoryStream.Create;
Jpg.SaveToStream(Stream);
Stream.Position := 0;
Table1.Append;
// Load the Blob field from the stream
TBlobField(Table1.FieldByName('Graph') ).LoadFromStream(Stream);
Table1.Post;
except
jpg.Free;
Stream.Free;
raise;
end;
jpg.Free;
Stream.Free;
end;
procedure TForm1.Table1AfterScroll(DataSet: TDataSet);
var
Stream: TMemoryStream;
Jpg: TJpegImage;
begin
Jpg := nil;
Stream := nil;
try
// Create a stream and load the contents of the Blob field
Stream := TMemoryStream.Create;
TBlobField(Table1.FieldByName('Graph') ).SaveToStream(Stream);
if Stream.Size > 0 then begin
// Create a JPEG image and load it from the stream
Jpg := TJpegImage.Create;
Stream.Position := 0;
Jpg.LoadFromStream(Stream);
// Assign the JEPG image to the Picture property of an Image
Image1.Picture.Assign(Jpg);
end else
Image1.Picture.Assign(nil);
except
Image1.Picture.Assign(nil);
end;
jpg.Free;
Stream.Free;
end;