Как изменить тег ориентации EXIF ​​(желательно с помощью PythonMagick)? - PullRequest
2 голосов
/ 11 января 2012

Я масштабирую и поворачиваю некоторые JPEG-файлы, используя PythonMagick.В идеале я мог бы обновить тег EXIF ​​Orientation.Однако, хотя я могу получить значение этого тега, я не могу изменить его.Подумайте:

from PythonMagick import Image

i = Image("image.jpg")
print i.attribute("EXIF:Orientation")
i.attribute("EXIF:Orientation", "5")
i.write("image-modified.jpg")

Выполнение этой команды показывает исходную ориентацию вашего изображения:

exarkun@top:/tmp$ python broken.py 
6
exarkun@top:/tmp$

И до тех пор, пока не было 5, exiftool будет демонстрировать, что новый файлориентация не была отрегулирована:

exarkun@top:/tmp$ exiftool image.jpg | grep Orient
Orientation                     : Rotate 90 CW
exarkun@top:/tmp$ exiftool image-modified.jpg | grep Orient
Orientation                     : Rotate 90 CW
exarkun@top:/tmp$ 

Почему ImageMagick не записывает измененную ориентацию?Как я могу получить это?

1 Ответ

1 голос
/ 24 июня 2012

Этот вопрос похож на: Библиотека манипуляций Exif для python

Также см .: Копирование и запись EXIF-информации из одного изображения в другое с использованием pyexiv2

Вышесказанное включает использование pyexiv2 для чтения и записи данных exif. Я понимаю, что это не PythonMagick, а использование библиотеки Python «высокого уровня» для записи данных EXIF, и, по крайней мере, насколько я могу судить, это лучшее (только?) Решение в настоящее время.

Похоже, что ImageMagick способен, поэтому, возможно, кто-то может рассказать здесь о том, как это можно сделать с помощью Python; см .: Как добавить exif-данные к изображению?

...