AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Image erscheint gedreht

Ein Thema von OsCor · begonnen am 20. Jan 2022 · letzter Beitrag vom 20. Jan 2022
Antwort Antwort
OsCor

Registriert seit: 1. Jan 2009
Ort: Kenzingen, Südbaden
99 Beiträge
 
Delphi 10.4 Sydney
 
#1

Image erscheint gedreht

  Alt 20. Jan 2022, 20:52
Delphi-Version: 10.4 Sydney
Mir gehen die Fragen nicht aus:
In einem Formular möchte ich ein Foto (jpg) darstellen - in einem Image-Control. Klappt prima, aaaaber nur, wenn ich das Bild vorher in irgendeinem Bildbearbeitungsprogramm geöffnet (nur geöffnet!) und dann bearbeitet oder unverändert wieder abgespeichert habe. Wenn ich das nicht tue, wird das Bild um 90° gedreht angezeigt.
In der Eigenschaftenanzeige im Windows-Explorer werden die Seitenverhältnisse korrekt angezeigt. Wieso also dreht Delphi die Bilder, wenn sie im Originalzustand aus der Kamera kommen?
Laden tue ich sie so:
Delphi-Quellcode:
procedure TForm1.bEVClick(Sender: TObject);
begin
  if OpenPictureDialog1.Execute then
  begin
    EtikettV := OpenPictureDialog1.FileName;
    imEV.Picture.LoadFromFile(EtikettV); //OpenPictureDialog1.FileName);
  end;
end;
Gruß
Oswald
  Mit Zitat antworten Zitat
Benmik

Registriert seit: 11. Apr 2009
560 Beiträge
 
Delphi 12 Athens
 
#2

AW: Image erscheint gedreht

  Alt 20. Jan 2022, 20:59
Ich würde mal in den EXIF-Daten des Originals schauen, was unter "Orientation" steht (IrfanView). Viele Programme drehen ein Bild, das einen anderen Wert als "1" hat, zur Anzeige richtig. Ich tippe mal, dass Delphi das Bild richtig anzeigt, nämlich so, wie es im Orientation-Tag steht.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: Image erscheint gedreht

  Alt 20. Jan 2022, 20:59
Die Kamera stand quert ... sie hat das Foto so aufgenommen, wie sie es macht und nur gespeichert, dass die Kamera um 90° gedreht war.

Die Delphi-Komponente ließt aber Dieses nicht aus den EXIF-Daten aus (sie ist zu doof für EXIF) und stellt das Bild so dar, wie es gepeichert ist.
Andere Fotobetrachtungsprogramme sind schlauer und drehen das Bild in der Anzeige, weil es so im EXIF steht.

[edit]
Falschrum gedacht.
$2B or not $2B
  Mit Zitat antworten Zitat
OsCor

Registriert seit: 1. Jan 2009
Ort: Kenzingen, Südbaden
99 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Image erscheint gedreht

  Alt 20. Jan 2022, 21:16
Die Bilder wurden tatsächlich mit um 90° gedrehter Kamera aufgenommen. Das zeigen auch die EXIF-Daten an. Anscheinend gibt es einen Automatismus, der die Bilder im Windows-Ordner „richtig rum” anzeigt und auch noch in den Dateieigenschaften die Orientierung entsprechend ändert.
Natürlich habe ich vor meiner Frage hier und in den Parallelforen nach einer Möglichkeit gesucht, die Bilder automatisiert vor der Darstellung im Formular zu drehen. Als ich aber den notwendigen Programmieraufwand sah, wendete ich mich mit Grausen ab Irgendwie hatte ich in meiner Bequemlichkeit eine Eigenschaft in der Form Image.Rotate erwartet oder erhofft

Die Bilder vorher mal kurz umzuspeichern, ist angesichts der geringen Anzahl kein großer Aufwand. Auch der Nachschub wird in homöopathischen Dosen erfolgen.

Vielen Dank für die Hinweise
Oswald
  Mit Zitat antworten Zitat
Benmik

Registriert seit: 11. Apr 2009
560 Beiträge
 
Delphi 12 Athens
 
#5

AW: Image erscheint gedreht

  Alt 20. Jan 2022, 21:26
Du kannst die Bilder doch einfach mit IrfanView verlustfrei drehen lassen, über die "B"-Option alle auf einen Rutsch. Für das verlustfreie Drehen gibt es auch Delphi-Code. "Umspeichern" klingt nicht nach verlustfrei!
Um das nicht unerwähnt zu lassen: Natürlich kannst du einfach sämtliche Bilder bearbeiten lassen. IrfanView/der Delphi-Code erkennen anhand des Orientation-Tags automatisch, wie zu drehen ist; das bedeutet bei einem Tag von "1", dass überhaupt nicht gedreht wird.

Geändert von Benmik (20. Jan 2022 um 21:29 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:24 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