![]() |
[Erledigt] JPEG aus Stream laden
Bei meinem Problem
![]() Allerdings habe ich nun ein neues Problem. Ich habe das JPG-Thumbnail nun in einem MemoryStream (MS). Wenn ich diese JPG-Datei nun speichere und dann lade, wird sie auch angezeigt:
Delphi-Quellcode:
Wenn ich die JPEG-Daten jedoch direkt aus dem Stream laden will, bekomme ich eine Exception "JPEG-Fehler #42".
...
MS.SaveToFile(FileName + '.jpg'); JPG := TJPEGImage.Create; //JPG.LoadFromStream(MS); JPG.LoadFromFile(FileName + '.jpg'); Image1.Picture.Assign(JPG); JPG.Free; MS.Free; ... end;
Delphi-Quellcode:
Frage: Warum? Bzw. was mache ich falsch?
...
MS.SaveToFile(FileName + '.jpg'); JPG := TJPEGImage.Create; JPG.LoadFromStream(MS); //JPG.LoadFromFile(FileName + '.jpg'); Image1.Picture.Assign(JPG); JPG.Free; MS.Free; ... end; EDIT: Ich habs schon. Die Antwort ist: Die Zeigerposition im Stream muss an den Anfang gesetzt werden:
Delphi-Quellcode:
MS.SaveToFile(FileName + '.jpg');
MS.Seek(0, soBeginning); JPG := TJPEGImage.Create; JPG.LoadFromStream(MS); Image1.Picture.Assign(JPG); JPG.Free; MS.Free; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz