Seite 1 von 2

JPG-Skalieren...

Verfasst: 15.04.2010 17:42
von sen-me
Hallo,

gibt es eine Möglichkeit JPG-Bilder schnell auf eine bestimmte Auflösung zu skalieren?
Das skalieren ist kein Thema, aber dadurch gehen die EXIF-Informationen verloren (ich öffne das Bild, skalier es und speicher es erneut ab).

Muss ich wirklich jede Datei öffnen, EXIF-Daten auslesen und erneut schreiben, oder gibt es eine Möglichkeit die Bilder zu verkleinern ohne das Informationen verloren gehen und dann das verkleinerte Bild an einem andren Ort abzuspeichern?


Lg Micha

Re: JPG-Skalieren...

Verfasst: 15.04.2010 18:52
von Fluid Byte
Muss ich wirklich jede Datei öffnen, EXIF-Daten auslesen und erneut schreiben...
Wie denn sonst?

Re: JPG-Skalieren...

Verfasst: 15.04.2010 19:12
von a14xerus
Fluid Byte hat geschrieben:
Muss ich wirklich jede Datei öffnen, EXIF-Daten auslesen und erneut schreiben...
Wie denn sonst?
Genau das fragt er doch grade -.-'
@ sen-me:
Nativ unter PB mit dne Imagebfehlen musst du wohl die Exif und Tags selber neu schreiben, da die ja nicht ins "PB-"image geladen werden.

Ansonsten vll mit externen DLLs oder evt einer Include, ich selber kenn aber leider keine atm.

Re: JPG-Skalieren...

Verfasst: 15.04.2010 19:16
von ts-soft
a14xerus hat geschrieben:
Fluid Byte hat geschrieben:
Muss ich wirklich jede Datei öffnen, EXIF-Daten auslesen und erneut schreiben...
Wie denn sonst?
Genau das fragt er doch grade -.-'
Welche andere Möglichkeit sollte es denn sonst geben?
Nichts und niemand kann die Exif schreiben ohne sie vorher zu lesen :freak:

Re: JPG-Skalieren...

Verfasst: 15.04.2010 20:59
von Thorium
Ich denke mal er möchte unnötige festplattenzugriffe vermeiden. Wenn er das JPEG mit der PB image lib speichert muss er es dann nochmal laden um die EXIF reinzuschreiben und es dann erneut auf die festplatte schreiben. Wieder mal ein Fall in dem man ein SaveImageToMemory gebrauchen könnte.

Also ohne das image erst auf die Platte zu schreiben und dann wieder zu laden wirst du wohl um irgendeine Lib oder DLL von außerhalb nicht auskommen.

Re: JPG-Skalieren...

Verfasst: 15.04.2010 21:02
von Fluid Byte
a14xerus hat geschrieben:Genau das fragt er doch grade -.-'
Is' schon wieder Welt-Klugscheißer-Tag -.-'

Ich bin dummerweise von einer vorhandenen Rest-Intelligenz bei euch beiden Experten ausgegangen die euch verstehen lässt das du die Datei zuerst laden musst um sie skalieren zu können ...

Das heißt? Richtig! Wenn er sie lädt kann er auch gleich EXIF mitlesen.
Viele Menschen nehmen fälschlicherweise an EXIF wäre Bestandteil des JPEG-Format was aber falsch ist.

Re: JPG-Skalieren...

Verfasst: 15.04.2010 21:33
von sen-me
Hätt ja sein können das es eine Funktion oder so gibt wo die EXIF mitläd und gleichzeitig mitspeichert...
Vllt gibts ja ne Lib, ma suchen....


Edit:
Z.b. das man direkt die Daten vom Bild per ReadWord oder so ausliest und diese direkt dann übertragt ohne jedes Feld jetzt auszulesen und schauen ob dort Informationen stehen...

Re: JPG-Skalieren...

Verfasst: 15.04.2010 22:53
von c4s
Exif-Daten werden mit dem Marker $FFE1 eingeleitet. Informationen über die Größe folgen darauf.
Einen dementsprechenden Code solltest du im Forum finden. Andernfalls wirst du bei deiner Suchmaschine des Vertrauens fündig.

Re: JPG-Skalieren...

Verfasst: 15.04.2010 23:13
von Thorium
Fluid Byte hat geschrieben: Viele Menschen nehmen fälschlicherweise an EXIF wäre Bestandteil des JPEG-Format was aber falsch ist.
Aber JPEG ist Bestandteil von EXIF. Ich hab mir grad die Spezifikationen angeschaut http://www.exif.org.
Ich dachte ja EXIF wäre nur ein Standart um Informationen in Bilddateien zu hinterlegen aber das stimmt ja garnicht. Es schreibt auch vor wie genau die Bilddateien gespeichert werden müssen und die Spezifikationen unterstützen nur ganz bestimmte Dateiformate, bzw. passen diese leicht an, JPEG gehöhrt dazu.

Also so falsch ist die Annahme garnicht das EXIF Bestandteil von JPEG ist. Nicht ganz korrekt, ja, aber nicht fatal falsch.

Re: JPG-Skalieren...

Verfasst: 16.04.2010 00:07
von Fluid Byte
Thorium hat geschrieben:Also so falsch ist die Annahme garnicht das EXIF Bestandteil von JPEG ist
Doch ist sie, genau wie ich es gesagt habe. JPEG ist völlig unabhängig von EXIF. JPEG funktioniert ohne EXIF. Du hast selber entsprechenden Link gepostet. Mit EXIF können Zusatzinformationen gespeichert werden die aber nicht auf das JPEG-Format beschränkt sind.

Ich habe das erwähnt weil sen-me bemängelt hat das PB die EXIF-Informationen nicht mit speichert. Aber wie oben beschrieben ist das nun mal nicht Bestandteil des JPEG-Formats und somit ist jeder Programmierer selbst dafür verantwortlich diese Informationen zu lesen und zu schreiben.