DTPab

印刷やデザイン、アドビ製アプリやスクリプトなど、雑多な技術ブログ

トリムされた画像が閾値以上トリムされているかどうか調べたい

はじめに

X(旧Twitter)のInDesignコミュニティで救難信号を受信しました(ご本人に掲載許可はいただいています)。

で、実は僕はこういうスクリプトを普段から書いていまして…。
ほとんど近しいものが手元にあったので、少し手を加えて公開しようと思った次第です。

概要

スクリプトを実行すると、閾値以上のトリミングがあるリンク画像を選択した状態でスクリプトが一時停止します。このままスクリプトを中断するか、スルーして次の画像へ進みます。すべてのリンク画像の巡回が終わったらスクリプトが終了します。

動作イメージ

再開したときにまた初めからというのがちょっとまだるっこしいですがご容赦ください。

仕様

  • InDesign CS4以上なら動くはず(InDesign 2022、2023で動作確認済み)
  • 初期値は15pt(約5.3mm)ですが、10行目のthreshold変数に代入する値をptで指定してもらえれば閾値が設定可能です
  • トリミング幅は水平・垂直方向(x, y座標)で計算し、リンク画像の4辺のいずれかが閾値よりもトリミングされていたら警告の対象となります
  • オブジェクトフレームが回転されていても、回転がない状態に戻してトリミングサイズを検出し、それを元に戻す、という手法で回転されたものに対しても対応しています

スクリプト

何か不具合等があればgistやこの記事にコメントをいただくなり、Xでリプライを飛ばしていただくなりでご連絡ください。