Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DB ( Blob ) -> TImage (https://www.delphipraxis.net/35810-db-blob-timage.html)

Tau 12. Dez 2004 00:04


DB ( Blob ) -> TImage
 
Hallo Laute

habe auch wieder mal ein Problem

versuche verzweifelt aus einer Datenbank ( Blobfeld ) Bilder ( *.jpg ) in ein TImage zu exportieren.

die Nerven liegen blank. :wall: :wall:

Entweder sehe ich den Wald vor lauter Bäume nicht oder ich bekomme es nicht auf die reihe.

für einen Tipp währe ich sehr Dankbar

Gruss
Tau

Hansa 12. Dez 2004 00:28

Re: DB ( Blob ) -> TImage
 
Der Tip ist Lemmy. Der hat ein Tutorial über Blobs. Bitte selber suchen. :mrgreen:

Tau 12. Dez 2004 20:04

Re: DB ( Blob ) -> TImage
 
Hallo Hansa

sorry habe mich etwas undeutlich ausgedruckt wahr schon etwas Müde.

Der unten angeführte Code funktioniert ohne Probleme aber
ist meiner Meinung nach sehr Langsam dadurch das ich
immer auf die HHD hinaus schreibe.

Es müsste das ganze aber auch über den Speicher funktionieren,
währe wesentlich schneller und man müsste sich nicht noch
um die Datei Leichen kümmern.

Habe es mit Stream versucht bekomme es aber leider nicht in den Griff.


H I L F E :wall: :wall: :wall:

Delphi-Quellcode:
procedure TForm1.LL10DefineVariables(Sender: TObject; UserData: Integer; IsDesignMode: Boolean;
          var Percentage: Integer; var IsLastRecord: Boolean; var EventResult: Integer);
 var jpg: TJPEGImage;
     bmp: TBitmap;
begin
  jpg := TJPEGImage.Create;
  bmp := TBitmap.Create;

  ADOQuery1F111.SaveToFile('demo.jpg');
  bmp.Assign(jpg);
  bmp.SaveToFile('demo.bmp');
  Image1.Picture.LoadFromFile('demo.bmp');

  LL10.LlDefineVariableExtHandle('Picture', Image1.Picture.Bitmap.Handle, LL_DRAWING_HBITMAP);

  If not IsDesignMode then
    begin
      IsLastRecord := true;
      Percentage := 100;
    end;

  jpg.Free;
  bmp.Free;
end;
Gruss
Tau

ol1uw 12. Dez 2004 21:33

Re: DB ( Blob ) -> TImage
 
Hallo

Versuchmal

Delphi-Quellcode:
      jpg := TJPEGImage.Create;
      if (ADOQuery.FindField('BILD') as TBlobField).BlobSize > 0 then
      begin
        jpg.Assign(ADOQuery.FindField('BILD') as TBlobField);
        Bild.Picture.Bitmap.Assign(jpg);
      end;
oder eventuell mit

Delphi-Quellcode:
      ADOQuery.CreateBlobStream(ADOQuery.FindField('BILD'),bmRead);
Gruß uwe

Tau 12. Dez 2004 21:54

Re: DB ( Blob ) -> TImage
 
Hallo ol1uw

ist genau das was ich gesucht habe und funktioniert. :witch: :dancer2:

DANKE uwe

Gruss
Tau


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz