![]() |
JPG in Image = gespeichertem JPG
Ich habe ein JPG und lade dies mit
Delphi-Quellcode:
in ein TImage.
fName := AddBackSlash(fDirDst) + ExtractFileName(fNamePic);
M.LoadFromFile(fName); M.Position := 0; I.LoadFromStream(M); ShowPage := TfShowPicture.Create(Application); ShowPage.Image1.Picture.Assign(I); ShowPage.Show; Mittels
Delphi-Quellcode:
kann sich der User dieses Bild wieder speichern.
var
Jpg: TJPEGImage; begin If (Not Assigned(Image1.Picture.Graphic)) or Image1.Picture.Graphic.Empty Then MessageDlg('Kein Bild im Speicher', mtWarning, [mbOK], 0) else begin if SaveDialog1.Execute then Begin Jpg := TJPEGImage.Create; try Jpg.CompressionQuality := Compressionfactor; Jpg.ProgressiveEncoding := true; Jpg.PixelFormat := jf8Bit; Jpg.Assign(Image1.Picture.Graphic); Jpg.Compress; Jpg.SaveToFile(ChangeFileExt(SaveDialog1.FileName, '.jpg')); finally Jpg.Free; end; end; end; end; Wie kann ich sicherstellen, dass das im Image geladene Bild gleich dem zu sichernden Bild ist? Die originale JPG Datei sollte gleich der gespeicherten JPG Datei sein. Kann man das sicherstellen, ausser den Stream beim Laden mit im Speicher zu halten? |
AW: JPG in Image = gespeichertem JPG
Zitat:
|
AW: JPG in Image = gespeichertem JPG
Es könnte mit etwas Glück allenfalls gelingen, wenn Du beim Speichern jegliche Komprimierung vermeidest und eine verlustfreie Speicherform wählst.
Die Wahrscheinlichkeit einer binären Übereinstimmung dürfte aber gegen 0 tendieren. ![]() |
AW: JPG in Image = gespeichertem JPG
Hallo zeras
wozu speicherst du das JPG Bild ab, wenn es danach 1:1 dem geladenen Bild entsprechen soll? Wenn der User das Bild ja nicht verändert, dann muss er es am Ende auch nicht abspeichern. Falls du den User das Bild an einem anderen Ort speichern lassen willst, dann verwende CopyFile(alterOrt, neuerOrt, ...), dann ist es 1:1 :-D. Und wenn du Bilder leicht verändern [zum Beispiel Text ins Bild schreiben willst o.ä.] und dann so abspeichern willst, dass Quelle und Ziel wo nix geändert wurde 1:1 übereinstimmen, dann verwende ein Format, welches die Pixel RAW lädt und speichert oder eine verlustfreie Kompression wie PNG. ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:51 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-2025 by Thomas Breitkreuz