Amazonで商品を見るセール会場へ

Photoshopスクリプト(jsx)│複数ページのPDFをレイヤーとして読み込む方法

Adobe XDや他のデザインツールで作成したPDFをPhotoshopに取り込む際、各ページをレイヤーとして読み込みたい場面があります。

この記事では、スクリプトを使って複数ページのPDFを1ページずつレイヤーとして読み込む手順を解説します。

複数ページのPDFをPhotoshopの各レイヤーとして読み込むイメージ。
目次

Adobe XDからのPDF出力手順

  1. Adobe XDでデザインを作成します。
PDF出力の元となるデザインをAdobe XDで作成している画面。
  1. [書き出し] > [すべてのアートボード] > [単一のPDFファイル] を選択してPDFを出力します。
Adobe XDのメニューから書き出し、すべてのアートボード、単一のPDFファイルを選択してPDFを出力する画面。

PDFをレイヤーとしてPhotoshopに読み込む手順

1. スクリプトの準備

下記のコードをテキストエディタに貼り付け、ファイル名を「PDF_Pages_to_Layers.jsx」として保存します。

Photoshopの他の操作については、関連記事のまとめも参照してください。

PDF_Pages_to_Layers.jsx

#target photoshop
app.bringToFront();
displayDialogs = DialogModes.NO;

var myMaxPages = 100;
var myCounter = 1;
var myResolution = 300;
var myColor = OpenDocumentMode.CMYK;

app.backgroundColor.rgb.red = 255;
app.backgroundColor.rgb.green = 255;
app.backgroundColor.rgb.blue = 255;

var _pdfDatei = File.openDialog("PDFファイルの選択");
var myDatei = "" + _pdfDatei;
var myEndung = myDatei.substr(myDatei.length-4,4);

if (myEndung !== ".pdf") {
    alert("選択されたPDFがありません。", "ファイル選択エラー");
} else {
    var pdfOpenOptions = new PDFOpenOptions;
    pdfOpenOptions.antiAlias = true;
    pdfOpenOptions.mode = myColor;
    pdfOpenOptions.bitsPerChannel = BitsPerChannelType.EIGHT;
    pdfOpenOptions.resolution = myResolution;
    pdfOpenOptions.supressWarnings = true;
    pdfOpenOptions.cropPage = CropToType.TRIMBOX;
    pdfOpenOptions.page = myCounter;

    open(_pdfDatei, pdfOpenOptions);
    var myDocument1 = app.activeDocument;
    var myLayerName = app.activeDocument.name;
    myDocument1.activeLayer.name = myLayerName;

    for (myCounter = 2; myCounter < myMaxPages; myCounter++) {
        try {
            pdfOpenOptions.page = myCounter;
            open(_pdfDatei, pdfOpenOptions);
            myLayerName = app.activeDocument.name;
            app.activeDocument.activeLayer.name = myLayerName;
            app.activeDocument.selection.selectAll();
            app.activeDocument.selection.copy(true);
            app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
            app.activeDocument = myDocument1;
            myDocument1.paste();
            myDocument1.activeLayer.name = myLayerName;
        } catch (e) {
            alert("Done");
            myCounter = myMaxPages;
        }
    }
}
  1. スクリプトファイルを保存し、PhotoshopのPresets内にあるScriptsフォルダに配置します。C:\Program Files\Adobe\Adobe Photoshop CC\Presets\Scripts
  2. 配置後、Photoshopを再起動します。

2. スクリプトの実行

  1. Photoshopを起動します。
  2. [ファイル] > [スクリプト] > [参照]からPDF_Pages_to_Layers.jsxを選択して実行します。
  3. 読み込みたいPDFファイルを選択すると、各ページが個別のレイヤーとして自動で読み込まれます
Photoshopでスクリプトを実行し、選択した複数ページのPDFが個別のレイヤーとして自動で読み込まれた画面。

読み込みと書き出しの記事は、ほかにもあります。

まとめ

  • Adobe XDなどで書き出した複数ページPDFをレイヤーごとに読み込める
  • 手作業での配置作業を省き、作業を効率化できる
  • ページ数が多いPDFでも一括で処理できる

複数ページのPDFをPhotoshopでレイヤー分けして作業したい場合は、このスクリプトをお試しください。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

Photoshopのおすすめ書籍

Photoshop用PCの選び方

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次