ich möchte gerne ein Wasserzeichen über JPGs zeichnen (muss nicht transparent sein) und danach in eine neue Datei abspeichern. Dabei soll die original JPG so wenig wie möglich verändert werden. Vor allem die EXIF-Metadaten sollen erhalten bleiben.
Momentan gehe ich so vor:
- JPG laden in ein QImage
- Wasserzeichen laden in ein QImage
- Beide mit einem QPainter kombinieren
- QImage abspeichern
Ich hab mir mal qexifimageheader.h und qexifimageheader.cpp von einem alten QTExtend besorgt.
Nur erstens generiert das JPG-Dateien die nicht lesbar sind (zumindest mit meinem QT 4.8.3) - und zweitens bin ich zum kombinieren immer noch auf die obere methode angewiesen (JPG wird neugeschrieben...)
Perfekt wäre eine lösung in der ich die Original JPG in einen Datenstrom einlese und irgendwo mittig im Bild mein Wasserzeichen (ebenfalls als z.B. QByteArray) über die Originaldaten drüberschreibe. Leider ist nur die JPG Kompression so komplex, dass diese Lösung nicht so einfach durchführbar ist, wenn hinten nocht ein einigermaßen vernünftiges Bild rauskommen soll.
Habt ihr eine Lösungsidee (am besten QT-intern ohne verwendung zusätzlicher Libaries)
Beste Grüße aus München,
Alex