Hallo,
man kann mit derselben Rastergrafik mit verschiedenen Algorithmen komprimieren und dann zu unterschiedlichen Ergebnissen kommen.
zweifellos, deswegen gibt's ja beim Erzeugen einer JPEG-Grafik so große Qualitätsunterschiede zwischen verschiedenen Programmen - auch bei nahezu gleicher resultierender Dateigröße.
Wenn man also mit GD die JPEG-Datei liest muss sie nach dem Drehen exakt so komprimieren, wie auch das original Komprimiert wurde um wieder zum Ergebnis vor der Drehung zu kommen bzw. keinen Verlust zu haben.
Hier liegt dein Denkfehler: Es ist nicht möglich, sie exakt so zu komprimieren, wie das Original, weil du im Gegensatz zum Original mit Daten arbeitest, die schon einmal verlustbehaftet komprimiert wurden (es sind also bereits Informationen unwiederbringlich verlorengegangen).
Dafür darf die Grafik eben nicht einfach als Rastergrafik eingelesen werden - es müssen auch die Komressionsschritte "rückgängig" gemacht werden (um das Muster zu lesen).
Genau das ist nicht möglich, ebensowenig wie man die Kompression eines MPEG-Videos oder eines mp3-Audioclips exakt rückgängig machen kann, weil einfach nicht mehr die exakte Information vorliegt. Anders bei GIF und PNG, die verlustlos komprimieren; hier kann ich das Ausgangsmaterial *exakt* bis aufs Pixel rekonstruieren.
Wenn bei der Verarbeitung von Daten Informationen verlorengehen, ist es prinzipiell unmöglich, aus den verbleibenden Daten die Gesamtinformation exakt zu rekonstruieren, es bleibt immer nur eine fehlerbehaftete Näherung.
Bye,
Martin
--
Verliebt: Er spricht, sie lauscht.
Verlobt: Sie spricht, er lauscht.
Verheiratet: Beide sprechen, und die Nachbarn lauschen.