Schaffte dies in Python mit:
from PIL import Image file_in = "test.png" img = Image.open(file_in) file_out = "test-fixed.png" img.save(file_out)
Benötigt PIL / Kissen pip install Pillow
Ich habe .png
Dateien von einem Tool ausgegeben, das .emf
s in .png
s konvertiert, aber den IEND-Block nicht am Ende hinzufügt.
Daher werden andere Tools wie ImageMagick nicht in die Nähe von ihnen gehen, wenn sie sie als fehlerhaft erkennen:
> pngcheck test.png test.png file doesn't end with an IEND chunk
Ich kann die .png
Geldstrafe jedoch in Desktop-GUI-Bildanwendungen öffnen. Daher ist es meine aktuelle Problemumgehung, sie in diesen Anwendungen (z. B. Preview.app) zu öffnen und das Bild erneut zu exportieren, das dann mit den richtigen Kopfzeilen gespeichert wird.
Dies ist offensichtlich nicht skalierbar und ich brauche etwas, um serverseitig automatisiert zu arbeiten.
Wie gehe ich vor, um die Bilder zu reparieren, vorzugsweise mit einer Methode, die automatisiert werden kann und serverseitig ausgeführt werden kann, z. B. mit Python?
Dies ist das fragliche Bild.
Schaffte dies in Python mit:
from PIL import Image file_in = "test.png" img = Image.open(file_in) file_out = "test-fixed.png" img.save(file_out)
Benötigt PIL / Kissen pip install Pillow