[Mac][CLI] 写真にファイル名を書き込む2

環境:macOS Catalina Version 10.15.6(英語環境)

以前 Mac で写真にファイル名を書き込む方法を書いた。

[Mac][CLI] 写真にファイル名を書き込む|with a Christian Wife|note
https://note.com/wacw/n/ndf6cf0097be1

ただし、この方法だと iOS デバイスで縦向きに撮影した画像が横向きに変換されてしまう。

こういうときは、-auto-orient オプションを使えばいい。exif データを元に画像の向きが修正されるので、その上で文字を書き込める。

すなわち、指定フォルダ以下の jpg ファイルに対しファイル名を書き込むコマンドは、以下のようになる。

$ mogrify -gravity South -auto-orient -font /System/Library/Fonts/Monaco.dfont -annotate 0 '%t' -pointsize 100 -fill white -undercolor '#00000080' *.jpg

メモ:
・-gravity オプションで画像内の書き込む場所を設定。South は下中央だ。
・-font オプションでフォントを指定する。フォントファイルまでパスを指定しないとコマンドでエラーが出た。今回は Monaco フォントを使ったが、日本語を文字化けさせないためには日本語フォントを使う必要がある。
・-pointsize オプションでフォントサイズを指定。
・-fill オプションでフォントの色、-undercolor オプションで背景色を指定。
・-annotate オプションの %t を %f にすると、拡張子を含んだファイル名を書き込める。
・-annotate オプションの最初の数値で gravity で指定した位置からの相対値を指定する。今回は 0 にしている。
・auto-anotate オプションで、画像の向きを修正する。← New!

参考:
php — ImageMagickを使用してEXIFの向きを検出し、画像を回転させる
https://www.it-swarm-ja.tech/ja/php/imagemagick%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6exif%E3%81%AE%E5%90%91%E3%81%8D%E3%82%92%E6%A4%9C%E5%87%BA%E3%81%97%E3%80%81%E7%94%BB%E5%83%8F%E3%82%92%E5%9B%9E%E8%BB%A2%E3%81%95%E3%81%9B%E3%82%8B/1041539656/