Bash → Ориентация изображения и EXIF
Написал небольшой баш-скрипт, чтобы менять ориентацию фоток без преобразования их изображения, а заменой битов ориентации в EXIF-информации. Генерирует все восемь вариантов. Пусть будет тут:
1 2 3 4 5 6 7 8 9 10 11 | #!/usr/bin/env bash
if ! [[ -f $1 ]]; then
echo "File does not exist"
exit 1
fi
for i in $(seq 1 1 8); do
fout="${i}_${1}"
exiftool -n -Orientation=$i -o $fout $1
done
|

Выше ориентация 1, ниже - 2

И таблицу добавлю с текстовой расшифровкой числовых кодов:
| 0th Row | 0th Column | ||
|---|---|---|---|
| 1 | Horizontal (normal) | top | left side |
| 2 | Mirror horizontal | top | right side |
| 3 | Rotate 180 | bottom | right side |
| 4 | Mirror vertical | bottom | left side |
| 5 | Mirror horizontal, rotate 270 CW | left side | top |
| 6 | Rotate 90 CW | right side | bottom |
| 7 | Mirror horizontal, rotate 90 CW | right side | bottom |
| 8 | Rotate 270 CW | left side | top |
UPD: Заодно узнал, что в моём бложике предварительная обработка изображений, т.е. превьюшки и конвертайция в webp и avif ориентацию из EXIF не учитывают. Исправил 😄
Комментарии