コマンドラインでPNGやJPEGのDPI(PPI)を変える方法
画面をスクリーンキャプチャしたものはMacだと144dpiや72dpi、Windowsだと96dpiだったりします。これを印刷用の300dpiにするにはMacの場合、ImageMagickを使うのが一般的ですが、脆弱性の問題が色々あるのでインストールしたくありません。それ以外だと、プレビューを使ってもできますが、GUIなのでファイルが大量にあるときなど面倒です。
PythonのPillowを使ってコマンドラインで変換できるようにしました。
dpiconv.py
#!/usr/local/bin/python3
from PIL import Image
if len(sys.argv) != 5 or sys.argv[1] != "-d" or int(sys.argv[2]) == 0:
print("usage: %s -d <dpi> input_pic output_pic" % sys.argv[0])
quit(1)
_dpi = int(sys.argv[2])
im = Image.open(sys.argv[3])
im.save(sys.argv[4], dpi = (_dpi, _dpi))
Pillowのインストールはこちらを参考にしてください。
https://note.nkmk.me/python-pillow-basic/