![]() |
Explorer zeigt in Miniaturansicht Bild verkehrt herum
Hallo,
ich habe ein Problem mit dem Drehen von Jpg-Bildern. Wenn ich ein Bild mit folgendem Code drehe:
Delphi-Quellcode:
wird die Miniaturansicht im Explorer nicht aktualisiert. Erst wenn ich im Kontextmenu auf "Miniaturansicht aktualisieren" klicke stimmt das Bild wieder.
procedure TForm1.DrehenClick(Sender: TObject);
var Jpg:TJpegImage; begin Screen.Cursor:=crHourGlass; Jpg:=TJpegImage.Create; Jpg.LoadFromFile('c:\testbild\dsc04860.jpg'); Jpg.Transform(jt_ROT_180); Jpg.SaveToFile('C:\dsc04860a.jpg'); Jpg.Free; Screen.Cursor:=crDefault; end; Doch damit nicht genug: Wenn ich dieses Bild dann in die XP-Vorschau lade und drehe es im oder gegen den Uhrzeigersinn wird die Miniaturansicht um 180° verkehrt herum angezeigt. Wennn ich das Bild nur mit
Delphi-Quellcode:
drehe klappt alles prima.
Jpg.Transform(jt_ROT_90);
Kennt jemand dieses Phänomen und kann mir erklären was das ist, und wie ich das Ganze richtig machen kann? |
Re: Explorer zeigt in Miniaturansicht Bild verkehrt herum
Könnte es daran liegen, dass es eine Miniaturansicht im JPEG selber abgelegt ist und dieses nicht aktualisiert wird unter den o.g. Umständen? Hättest du die Möglichkeit das JPEG und das vllt. enthaltene Preview-Bild gesondert zu betrachten?
|
Re: Explorer zeigt in Miniaturansicht Bild verkehrt herum
Es gibt in JPGs die Möglichkeit, nur einen Hinweis über das Drehen des Bildes anzulegen,
so macht es z.B. meine Digitalkamera. Erst wenn ich das Bild in einem Programm lade, dass diesen Flag kennt und auswertet, wir das Bild gedreht, z.B. in Photoshop. Gruß Pfoto |
Re: Explorer zeigt in Miniaturansicht Bild verkehrt herum
Hallo,
@Muetze1: Ja, ich lese die Vorschau des Bildes mit IExtactImage aus, und lade es in eine ImageList. Von dort hole ich es für eine ListView (EasyListView, hier kann man problemlos eine Vorschau nachbauen) wieder. Und auch hier ist die Miniaturansicht nicht richtig. Evtl. meinst Du aber auch den EXIF-Eintrag im Jpeg, das bleibt auch nach den Drehungen so erhalten wie das Foto aufgenommen wurde. Warum aber funktioniert alles, wenn ich es nur um 90° drehe? @Pfoto: Meine Bilder sind ohne Drehung auf der Kamera gespeichert und sollen von meinem Programm nur u.U. von Horizontal auf Vertikal und evtl. um 180° gedreht werden, bevor ich sie auf die Festplatte kopiere. Trotzdem Danke erstmal für die Antworten, vielleicht wisst Ihr noch mehr... |
Re: Explorer zeigt in Miniaturansicht Bild verkehrt herum
Hallo,
so, ich bin jetzt zum dem Schluß gekommen daß das Ganze nicht mit der Unit Jpeg.dcu geht. Aber nach viel probieren und testen mache ich das über GDI+. Das ist aber ein anderes Thema... Nochmals vielen Dank für die Antworten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 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