Illustrator:選択オブジェクトに合わせてアートボード変形、2回目以降はアートボード追加するやつ

こまかい作業が山ほどきまして…
スクリプト探したけどなかったので書きました。

画像担当の兄さんから画像もしくは図版が上がってくる前にpptxを変換したPDFから工面したアタリ画像でレイアウトを進めてしまいたくて、
でもわざわざ1こ1こばらすのがだるいのでマルチアートボードaiにしてしまいたいんだけど
選択、アートボード作成、選択オブジェクトに合わせる、がとてもだるかったので。

ダウンロード

解凍後は自分でわかりやすい名前に変えちゃっていいです。
IllustratorCS4以降、かな?
メニューコマンド「オブジェクト>アートボード>選択オブジェクトに合わせる」
がすぐ出てこなくて、したたか企画さんのデータベース参照させてもらいました。
したたか企画:【まとめ】Illustratorスクリプトの開発資料


あそびかた

こいつらをアートボード分けしたがります。

アートボードを合わせたいオブジェクト(複数可)を選択して実行。
アートボードがフィットしましたぜ。
特定ドキュメント上で初めて実行したときだけ、アクティブなアートボード自身がフィットします。

次のオブジェクト(複数可)を選択して実行、
同じドキュメントで実行した2回目以降は新規アートボード作成のうえフィットします。

という感じでつぎつぎ選択&実行。
できあがり。やったー。

というやつです。


わ、わからんだとっ

「使い方がピンとこない」という声と、
「アートボードツールでオブジェクトをクリックすればフィットするよ」という声が
電波に乗って飛んできたので、作業記録をgif動画にしときましたよ。スクリプトはアクションに記録してあります。

「アートボードツールでオブジェクトをクリック」するには対象のオブジェクト群がグループ化されていないといけなくて、でもそれだけのためにグループ化したくないですねえ。
スクリプトのほうは選択だけで大丈夫でございます。

InDesign:選択したPDFを全ページ任意の場所に配置したい

こまかい案件がきてしまって、
ページ内にPDFを全ページぽいぽいぽいぽい配置する必要ができたので
スクリプト探しました。
見つかりませんでした。。
なので書きました。
Advent Calendar用に温存しなくてよかったのかよ,おい。

マルチページPDFをinddドキュメントにページを追加しながら1ページずつ配置する,
というやつならサンプルスクリプトにも収録してあるんですけどねえ。
今回欲しかったのは,配置先を決めてないやつ。
あのー,マウスカーソルにサムネイルが出るアレですわ。

というわけでどうぞ。

ダウンロード

解凍後、お好きなわかりやすいファイル名になおしていいです。
あんまり古いバージョンのInDesignでは予期しない動作をしますたぶん。
PDFのページ数を調べる関数はTen A師匠のところから拝借しました。やったー。
Automation Skill: PDFファイルのページ数を知りたい

※いろんなPDFを試したところ、マルチアートボードのIllustratorファイルで作成したPDFでは失敗しました…
Acrobatで開いて別名で保存したら動いた。ここはのちのち改良の余地ありで。


あそびかた

実行するとファイル選択ダイアログが出るので,PDFだのaiだのを選択。
読み込み終わるとマウスカーソルが例のやつになります。


もちろん⌘ + shift + ドラッグでタイリング配置もおっけー。
やったーやったー。

注)読み込みオプション、トリミング、「背景を透明に」などの設定は手動配置にならいます。
です。


…というのを、上記からすこし修正しました。ver.b に差し替えました。すみませーん。
【変更点】
・選択したPDFのページ数取得に失敗した場合、静かに終了してしまっていたのでアラートを追加
・前回の配置で「読み込みオプション」にチェックが入っていた場合、スクリプト実行時にページごとに毎回ダイアログが出て大層うざくなる挙動だったのに気づいて、以下の通りに修正しました。
1ページ目のみ、ユーザーの設定通り、読み込みオプションにチェックが入っていればダイアログを表示
2ページ目以降は読み込みオプションを表示しない

読み込みオプション、これですね。自分ではチェックを外したまま使用していて、用事があるときだけshift+OKで表示させていたので気付くのが遅れました…

InDesign:選択した画像のリンク元ファイルに赤タグつけるやつ

すっごい昔に書いたスクリプトが動かなくて、
困ってしまって教えてもらって直ってしまったのでメモ。

経緯

案件はInDesignで、
1年ちょっとぶりに初校戻しがきて(どうなんだそれは)、
配置済みの画像が大量に差し替えになって。
ふるい画像をレイアウト上で削除するのは簡単なんだけど、同時に不要になったファイルをLinksフォルダから移動したくて。
本来はパッケージで収集しなおすのが筋なんでしょうけど、
理由をかっこよく言うと「だって、したくないんだもん」です。
ちゃんとこまかく言うと、
いちど明示的にリンク切れ状態を作ってから、確実に差し替えを行うため。

で、ファイルを移動するスクリプトを書いてしまうと、移動先の名前重複など厄介が多いのと
リネームしたくない場合があることなどもふまえ。
で、ふと「レイアウト上で選択した画像のリンク元ファイルにFinderでタグ(昔でいうラベル)をつけるスクリプト」というのを過去に書いた記憶がよみがえって。
外付SSDに保管してある旧OS環境を調べてみたら、まんまと見つかったんですよ。
あのー、13年前のjsxファイルが。

問題が浮上

で、わーいって喜んで(ほんとに「わーい」言った。職場で)
実行したら、エラー。
要約すると「System Eventsにお願いする権限がありません」と言われた。
Finder操作が絡むため、そこの処理だけピンポイントでdoScript()でAppleScriptを使ってて。
この10年ちょっとでファイルアクセスの類に関してはずいぶんと厳しくなっているので、
そのへんのあれなんだろうなあ、と、わかったようなことを思いつつ、結局わかってなくて。

これはmacOS Montereyのシステム環境設定 > セキュリティとプライバシーのスクショ。

だいたいは、ここの「フルディスクアクセス」にアプリケーションを追加しておけば動いてたんですな。
でもいま動いてないじゃんすかー。

解決

そんでまあ、Twitterという名のメンター群に助けを求めてみました。

https://x.com/sttk3com/status/1849278046857273691
したたか企画さんからズバリの回答いただきました。彼もAdobe Community Expertやってます。

「オートメーション」を確認しろ、と。
前のスクショで見切れてたぐらい、存在を認識してすらいなかった項目。
こんな状態になってました。

チェックがついていないFinderにチェックを入れたら、やっと動きました。
ばんざいすぎる。なんというばんざい。
ほんとに助かりました。いつもいつもありがとうございます。

余録

そんなところで、今回思ったのは、今後はスクリプトの公開・配布の際、macOS各バージョンすべてに応じたセキュリティまわりの対処法を添書きしないとだめだな、ということ。
しかしアプリケーションならまだしも、OSの全バージョンを網羅するというのは個人では実際だいぶ厳しいですね。
なので、誰かいい感じにまとまった記事を書いてくれたやつをリンクして済ませたいです(レンタルふんどし)。

おまけ

そのスクリプト、ついでなので置いておk……おこうと思ったんですが
いくらなんでも昔すぎて、自分で見てもあまりに稚拙なので書きなおしました。
13年前って、ムス子が幼稚園、自分もまだ12歳ぐらいですよ※
よかったらどうぞ。

ダウンロード

解答すると日本語名のjsxがでてきます。macOSだけで動きます。
雑に選択 → 実行 → リンク元ファイルに赤タグがつく → 選択解除されて完了 です。
リンク切れなど何らかの事由でタグ付けができなかった物は選択状態で完了するので参考にしてください。

てなかんじです。