見出し画像

InDesign:選択しているページのマスターを参照してページを挿入する

InDesignでセクションの末尾にページを挿入するとき、選択しているページのマスターを参照したいのに、右ページのマスターが参照されてしまって困っていました。

[ページ]パネルで右クリックしても、そのページのマスターは参照されrず、ドキュメントウインドウに表示されている右ページのマスターが参照される仕様なのです。

そのため、セクションの末尾では意図しない扉ページが参照されてしまうのです。

X(Twitter)で聞いてみたのですが、解決策は見つからず…

ChatGPTとやりとりしたら実現できました。

// ページ挿入スクリプト

// ダイアログボックスを表示して挿入するページ数を選択し、選択されたページ数分だけページを挿入する
function insertPages() {
    var insertPageDialog = app.dialogs.add({name: "挿入するページ数を選択"});
    with(insertPageDialog.dialogColumns.add()){
        var pageCountField = integerEditboxes.add({editValue: 2}); // 初期値を 2 に設定
    }
    var result = insertPageDialog.show();
    if (result == true) {
        var pageCount = pageCountField.editValue;
        insertPageDialog.destroy();
        
        // 挿入するページ数分だけページを挿入
        var currentPageIndex = app.activeWindow.activePage.documentOffset;
        var currentPage = app.activeDocument.pages[currentPageIndex];
        var spread = currentPage.parent;
        for (var i = 0; i < pageCount; i++) {
            var newPage = spread.pages.add(LocationOptions.AFTER, currentPage);
        }
        alert(pageCount + " ページが挿入されました。");
    } else {
        insertPageDialog.destroy();
    }
}

// スクリプトを実行
insertPages();

圧倒的に2ページ挿入することが多いので、デフォルトで「2」が入ります。

Keyboard Maestroバージョン

Keyboard Maestroからも実行できます。

ダウンロード


ここから先は

0字 / 1ファイル

¥ 100

定期マガジンを購読されるとサンプルファイルをダウンロードいただけます。 https://note.com/dtp_tranist/m/mebd7eab21ea5