Senin, 29 Oktober 2007

Format JPEG pada TDBimage

Ternyata untuk menyimpan format JPG kedalam database paradox atau yg lain nya dapat di lakukan dengan cara

procedure TForm1.Button1Click(Sender: TObject);
var DtStream : TStream;
DtJpg : TJPEGImage;
begin
DtJpg := TJPEGImage.Create;
DtStream := TMemoryStream.Create;

if OpenPictureDialog1.Execute then
begin
DtJpg.LoadFromFile(OpenPictureDialog1.FileName);
DtJpg.SaveToStream(DtStream);
Table1Gambar.LoadFromStream(DtStream);
end;

DtJpg.Free;
DtStream.Free;
end;

Kemudian bagaimana untuk menampilkan kembali ke komponen TDBImage.
ada beberapa hal yg bisa di lakukan;

1. Menyimpan gambar ke dalam file kemudian memangil kembali ke dalam TDBImage
Table1Gambar.SaveToFile('FileJpg');
DBImage1.Picture.LoadFromFile('FileJpg');

2. Merubah ke format BMP kemudian di tampilkan ke TDbImage
procedure TForm1.TampilkanGbrJpg;
var DtStream : TStream;
DtJpg : TJPEGImage;
DtBmp : TBitmap;
begin
if Table1.FieldByName('Gambar').AsVariant = '' then
begin
DBImage1.Picture := nil;
exit;
end;

DtJpg := TJPEGImage.Create;
DtStream := TMemoryStream.Create;
DtBmp := TBitmap.Create;

Table1Gambar.SaveToStream(DtStream);
DtStream.Position := 0;
DtJpg.LoadFromStream(DtStream);

DtBmp.Height := DtJpg.Height;
DtBmp.Width := DtJpg.Width;
DtBmp.Canvas.Draw(0,0,DtJpg);
DBImage1.Picture.Graphic := DtBmp;

DtJpg.Free;
DtStream.Free;
DtBmp.Free;
end;

1 komentar:

Purwanto Mardani (k' wan) mengatakan...

mas ada sdh berbentuk file delphinya gk??