InDesign: オレンジ色つけたページを出力範囲に設定だけしておくやつ

企業勤めで書籍組版の仕事してる人向けのものです。自分だ自分。

ゲハン間際とか、修正したページだけぱらっぱらと出力すること、あるじゃないですか。まああるんですよ。
これが現場全員で使っているプリンターで出力する時、いろいろとよくなくて。

修正するごとにページを出力する → 他の人のプリントに混ざる。持ち去られる。諦めて出し直したあと、そっと戻される。
プリンターアプリを一時停止してプリントキューを溜め込んで一気に放出 → 他の人のプリントが混ざる。今度は自分が持ち去ってしまう。
みたいな。

昔いた現場には、自分のプリントを探すために他の人のプリントをひっかき回して、順番、向き、表裏、すべてめちゃくちゃにしてくれるすごい人もいたりして。すごかったなー。すごかったすごかった。

というわけで、
訂正のたびに出力する予定のページとして記録、一気にプリント という策を考えていて、
たどり着いたのが今回のやつ。

で、必要な情報を検索していると、ぜんぶUske_Sさんとこの記事で済んでしまったというw どうなってんだ。
参照先のスクリプトは自分のニーズとはちょっとだけアプローチがちがうので、こっちはこっちで自分視点のものをまとめてみました。

参考にした記事2こ。


ダウンロード

スクリプト4こ入りのzipです

id_orangePagesToOutputRange.zip

展開するとこんなかんじです。


あそびかた

以下、作業の流れに沿って説明しときます。

赤字訂正の済んだページがアクティブなとき、出力候補として記録するために「ページにオレンジラベル.jsx」を実行。
ページパネル上の選択ページにオレンジのラベルがつきます。
このとき、本文の行数増減で後続ページにも変化が起きた場合は、どこまで影響したかを目視して、それらをページパネル上で一括選択して、同様に「ページにオレンジラベル.jsx」を実行すると、そいつらぜんぶオレンジ色に染まります。

このオレンジラベルのついたページ群を出力範囲として設定するために「オレンジのページを出力範囲に.jsx」を実行。
完了を示すアラートで出力範囲の文字列が出ます。ページ範囲の記法に則るよう、がんばりました。

セクションプレフィクスも拾います。

このとき、
・プリントのページ範囲に設定
・PDF書き出しのページ範囲に設定
・クリップボードにコピー
が行われます。必要なもの以外はスクリプトファイルをエディタで開いてコメントアウトしてください。
コメントアウトは、行の先頭に半角スラッシュ2こ入力「//」です。

このあと「プリント」を実行してみると、こんなかんじです。

このとき、もしセクション設定の関係で出力時に警告が出るような状態のとき。
こんな警告ですね。

そのときは、仕方なく絶対ページ番号が使用されます。やさしい!

出力作業が済んだら、「ページラベルを初期化.jsx」でドキュメントのページ全体が「親ページのカラーを使用」になります。
※非常に安直な作りなので、別件でページラベルを活用している場合は使わないでください。


おまけ

同梱している「startup scripts」フォルダ内の「printAllPages.jsx」。
これ昔書いたやつでファイル名と内容に齟齬があるんですが、
前回のプリント時に「現在のページ」を使用したあと、その次に何も考えず全ページのつもりでプリントしたら「現在のページ」しか出てなくてウワー、みたいなやつ対策。これを入れておくと、次回のプリント画面が「すべて」に変更されます。バージョンによるのかな。昔けっこうやられました。
自分がしょっちゅううっかりしてするので使ってます。おすそわけです。これで存分にうっかりできます。

以上、よかったら使用感などお知らせください。うれしいし、もっといいのを作るかもしれませんし。

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だけで動きます。
雑に選択 → 実行 → リンク元ファイルに赤タグがつく → 選択解除されて完了 です。
リンク切れなど何らかの事由でタグ付けができなかった物は選択状態で完了するので参考にしてください。

てなかんじです。