2008年10月31日金曜日

Illustratorで変倍画像チェック

ある教えてサイトで困っている人に作ってあげたイラレ用の画像変倍チェックスクリプト。
実行すると、変倍の配置画像があればすべて選択された状態になり、ダイアログで何個あるか表示します。
画像にロック等がかかっているとうまく動作しないかも。
JavaScriptですので、Mac版でも動きます(確認してないけど)。

...

#target Illustrator

Application.active
doc = app.activeDocument;

doc.selection = null;

allPlaceItem = doc.placedItems;
for(i=0; i<allPlaceItem.length; i++){
tatehi = Math.round((allPlaceItem[i].boundingBox[1] / allPlaceItem[i].height) * 100,1);
yokohi = Math.round((allPlaceItem[i].boundingBox[2] / allPlaceItem[i].width) * 100,1);
if(tatehi != yokohi) allPlaceItem[i].selected = true;
}
alert("Henbai count = " + doc.selection.length);

3 件のコメント:

匿名 さんのコメント...

探していたスクリプトです!!!!しかしエラーが出て動きません。なぜでしょうか?教えてください。当方スクリプトは全くわかりません。よろしくお願いします。
動作環境はMac OS10.14.6

イラレはCC2019です。

ギョニソ さんのコメント...

コメントどうもです。

かなり昔のスクリプトですが、今確認してみたところイラレ2022(macOS 10.15.7)でもきちんと動作しました。
(このブログのテキストをコピーペーストして確認しています)

それで気がついたのですが、配置画像がEPSでないときちんと変倍をチェックできないようです(JPGとかだと全て変倍と認識してしまう)。ただし、その場合もエラーは出ませんでした。

こちらも簡単なデータでしか試していないので、複雑なデータだったりするとどうなるかわかりません。
画像1枚配置しただけとかの簡単なデータで試してみて、それでもエラーが出るようならコピペ範囲が1行足りないとか、余計なテキストを含んでいるとか、ケアレスミス的なことを疑ってみてください。
簡単なデータではきちんと動く場合、こちらで詳しい診断をしたりご相談にのったりはできませんので、これを機会にスクリプトを学んでみるとか、残念ですが別の何かを探すとかしてみてください。

ちなみに最初の3行(空行含む)
#target Illustrator

Application.active

は、なくて大丈夫です。
ていうかそれのせいでwin版だとエラーが出ました。
(上述のMac版2022ではあってもなくても動きましたが)

匿名 さんのコメント...

2008年ですので返信あると思いませんでした。ありがとございます。
#target Illustrator

Application.active
を削除したら正常にできました。感謝感謝です。

アプリケーションが未定義です
とエラーが出てました。

これを機会に学びたいと思います。
素晴らしいスクリプト使わせていただきます。
ありがとうございました。