【解決】元データを消さずいつもの設定でPDFを書き出したい!

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る
PDF複製書き出しスクリプト アイキャッチ図版

IllustratorファイルのPDF書き出しに[別名で保存]を使用すると,作業中の書類はPDFに変わります。元データがai/epsファイルでもPDFです。

もし書き出しオプションで[Illustrator の編集機能を保持]をOFFにしていた場合,書類を閉じた瞬間に編集可能な元データは消え去ります。大変なことですね。

そんな悲劇を避けるため,次の策が推奨されています。

  • [複製を保存]を利用する
  • [別名で保存]でPDFを書き出したあと書類を閉じるアクションを利用する

ただこれらは,ファイル名の「のコピー」を毎回削除する必要がある,使用しているIllustratorすべてのバージョンにアクションを設定しておかなければいけない,などいった理由でなかなか自分に定着しません。正しいけど面倒臭いことはすぐやらなくなるのが人間というものです。

そこで今回は,開いている書類と同じフォルダ・名前で,プリセット名を指定してPDFを複製書き出しするIllustratorスクリプトを紹介します。

あらましを教えて

Illustratorで開いている書類と同じフォルダ・名前で,PDFを複製書き出しするスクリプトです。ファイル名を特定の形式にすることで,[PDF/X-4:2008 (日本)] [最小ファイルサイズ] など使用するAdobe PDF プリセットの種類を指定できます。もちろんご自身でカスタマイズしたオリジナルプリセットも使用可能です。あらかじめ指定済みのスクリプト(exportPDF=[最小ファイルサイズ].jsxなど)10個セットで公開しています。とプリセット名をテキストとして取得するスクリプト,計11個セットで公開しています。

Keyboard MaestroSPAiSppyなど,スクリプトにショートカットを割り当てたりパネルから実行できるアプリの併用がおすすめです。実行と管理の手間が格段に減るため,新しい習慣を無理なく定着させられます。次の画像はSPAiのパネルです。

SPAiのパネルでexportPDFスクリプトを表示している画像

便宜上「複製書き出しする」と表記しましたが,実際に実行しているのは[スクリーン用に書き出し]です。Illustratorスクリプトに複製保存機能はないためそうしました。名前はスクリーン用ですが,PDFについては印刷用プリセットを指定すれば印刷用になります。例えば [PDF/X-4:2008 (日本)] で書き出し,Adobe Acrobatでプリフライト[PDF/X-4 への準拠を確認]を実行すると,PDF/X-4に準拠していることがわかります。

AcrobatのプリフライトでPDF規格への準拠を確認したところの画像

どのバージョンに対応してるの?

Illustrator CC 2018(22) かそれ以降のバージョンに対応しています。CC 2018 から搭載された機能に依存するため,それ以前のバージョンでは動きません。

使いかたは?

それではこちらのファイルをダウンロードしてください。

難しいことは何もありません。Illustratorで書類を開いた状態で,exportPDF=[最小ファイルサイズ].jsx など使いたいAdobe PDF プリセット用スクリプトを実行するだけです。開いている書類と同じフォルダに,同じ名前でPDFファイルが書き出されます。もちろん拡張子は.pdfです。

書類が1度も保存されていないときや,ファイル名が重複するときには,保存先指定ダイアログが出ます。

バージョン1.2.0からは,リンク切れの画像があるとき処理を続けるか確認します。基本的には「いいえ」を選んで中止し,リンクを手動で修正してください。

無効なリンク画像警告メッセージ画像

どうやって種類を指定するの?

スクリプトのファイル名を exportPDF=[最小ファイルサイズ].jsx のような特定の形式にすることで,使用するAdobe PDF プリセットの種類を指定します。ファイル名[最小ファイルサイズ]部分の編集により,それらの設定を変えられます。

ただ[PDF/X-4:2008 (日本)]のように,ファイル名に使えない文字を含むプリセット名があります。 /(半角スラッシュ)と :(半角コロン)はシステムがパス区切り文字として扱うので,ファイル名には使用禁止なのです。そこで%/(全角パーセント全角スラッシュ)で /(半角スラッシュ),%:(全角パーセント全角コロン)で :(半角コロン)として扱うルールにしました。プリセット名に%(全角パーセント)を使いたい場合は%%(全角パーセント全角パーセント)としてください。

どんな種類が指定できるの?

次のようになっています。

プリセットの種類動作説明
dialogダイアログでAdobe PDF プリセットを選択して実行する
[Illustrator 初期設定][Illustrator 初期設定] を使用する
[PDF%/X-1a%:2001 (日本)][PDF/X-1a:2001 (日本)] を使用する
[PDF%/X-3%:2002 (日本)][PDF/X-3:2002 (日本)] を使用する
[PDF%/X-4%:2008 (日本)][PDF/X-4:2008 (日本)] を使用する
[プレス品質][プレス品質] を使用する
[最小ファイルサイズ][最小ファイルサイズ] を使用する
[最小ファイルサイズ (PDF 1.6)][最小ファイルサイズ (PDF 1.6)] を使用する
[雑誌広告送稿用][雑誌広告送稿用] を使用する
[高品質印刷][高品質印刷] を使用する
プリセット名ユーザー定義プリセット名を直接指定する。この場合は「プリセット名」というプリセットが存在したらそれを使用する。他の種類と違い[](ブラケット)はつけない

exportPDF=dialog.jsx では,ダイアログでプリセットを選択して実行できます。各項目の左にある数字がショートカットキーです。単体でキーを押して項目を選択し,returnキーまたはOKボタンで確定します。

exportPDF=dialog.jsxのプリセット選択画面

exportPDF=argv.jsx は,Keyboard Maestroとスクリプトファイルを実行するKeyboard Maestro用アクション(無料)とのセットで使います。argumentsに入力する文字を変えれば使うファイルをこれ1つに絞れるので,スクリプトをアップデートするときなどに管理が楽になります。

exportPDF=argv.jsxのArgumentsを指定している画像

getPresetNames.jsx は,実行するとIllustratorが認識しているAdobe PDF プリセットの名前をダイアログで表示します。テキストのコピーにご使用ください。1行分しか見えませんが複数行あります。

Adobe PDF プリセット名取得スクリプト画面

これでまた少し仕事が速くなりました。今日もさっさと仕事を切り上げて好きなことをしましょう!

コードはこちら。

このサイトで配布しているスクリプトやその他のファイルを,無断で転載・配布・販売することを禁じます。
それらの使用により生じたあらゆる損害について,私どもは責任を負いません。
スクリプトやファイルのダウンロードを行った時点で,上記の規定に同意したとみなします。

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

広告

コメント

  1. フジ男 より:

    PDFにアウトラインをかけて書き出ししたいです!スクリプト作っていただけないでしょうか?

    1. したたか企画 より:

      何となく推奨しないワークフローの気配がしますが,ひとまず話は聞いてみたいです。

      Illustrator書類内の文字をアウトライン化した後,PDFで保存したいという意味ですか。それともまずPDFがあって,その中の文字をアウトライン化した後保存するイメージですか?

コメントを残す