Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Imagearry wird direkt ausgegeben (https://www.delphipraxis.net/198830-imagearry-wird-direkt-ausgegeben.html)

Janninger 3. Dez 2018 20:26

AW: Imagearry wird direkt ausgegeben
 
Prinzipiell könnte ich die umwandeln, müsste dann aber wieder zurück zu jpeg wenn ich sie über TSaveDialog abspeichern will.

DieDolly 3. Dez 2018 20:29

AW: Imagearry wird direkt ausgegeben
 
Gerade getestet, funktioniert nicht.
Die Dateifilter einer TImageList lassen kein JPEG oder JPG zu.

KodeZwerg 3. Dez 2018 20:35

AW: Imagearry wird direkt ausgegeben
 
Habs gerade auch gemerkt, mist... was ich rasch tat war dein vorschlag, der funktioniert.
Delphi-Quellcode:
function JPGToBitmap( const FileName: String ): TBitmap;
Var
 fJPG: TJPEGImage;
begin
 fJPG := TJPEGImage.Create;
 try
  fJPG.LoadFromFile( FileName );
  Result := TBitmap.Create;
  Result.Assign( fJPG );
 except
  Result := nil;
 end;
 fJPG.Free;
end;
Fürs speichern, kopiere einfach die jpg-Datei wohin auch immer.

Janninger 4. Dez 2018 00:26

AW: Imagearry wird direkt ausgegeben
 
Habe das jetzt mal so umgebaut, das die jpegs direkt in ein
Delphi-Quellcode:
array of TJpegimage
geladen werden.
Nur wie bekomme ich die Bilder wieder aus dem Array?

mit
Delphi-Quellcode:
img.Picture.Graphic := PatBildAr[x];
funktioniert es jedenfalls nicht.
Ich vermute das er die Größe der jpegs nicht ermitteln kann.

Delphi.Narium 4. Dez 2018 11:09

AW: Imagearry wird direkt ausgegeben
 
Du schriebst weiter oben
Delphi-Quellcode:
PatBildAr[i].Picture.Assign(jpg);
, wie mag das Gegenstück dazu wohl aussehen?

Warum nicht einfach die gleiche Syntax, nur mit anderen Variabeln?

Wenn Du doch dem Array ein Bild mit Assign zuweisen kannst, warum kannst Du dann das dort enthaltene Bild nicht mit Assign an eine andere Variabel, Komponente ..., mit identischen Eigenschaften und Methoden, zuweisen?

Für mich ergäbe sich daraus irgendwie sowas:
Delphi-Quellcode:
img.Picture.Assign(PatBildAr[x]);
Kodezwerg schrieb doch
Delphi-Quellcode:
Result.Assign( fJPG );
. Result ist ein TBitmap. Hat img ein Attribut vom Type TBitmap? Und hat TJpegimage Deines Arrays auch ein Attribut vom Type TBitmap? Dann sollten dies (z. B. per Assign) zuweisbar sein.

Janninger 4. Dez 2018 12:45

AW: Imagearry wird direkt ausgegeben
 
Ja, soweit verständlich. Nur bekomme ich mit
Delphi-Quellcode:
img.Picture.Assign(PatBildAr[x]);
den Jpeg-Fehler #42.

KodeZwerg 4. Dez 2018 13:44

AW: Imagearry wird direkt ausgegeben
 
Also in meinem kleinen Feldtest habe ich eine TImageList mit TBitmaps gefüllt die von JPGToBitmap geliefert wurden.
Im nach-hinein nur noch mit der ImageList gespielt ohne Nennenswerte Besonderheiten festgestellt zu haben.

Janninger 4. Dez 2018 13:55

AW: Imagearry wird direkt ausgegeben
 
Kann die TImagelist nicht nur gleichgroße Bilder speichern? Oder auch Originalgröße des jpegs resp. bitmaps.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:20 Uhr.
Seite 3 von 3     123   

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