DTPab

DTPにまつわるあれこれ

リンクファイルの配置オプションを表示する

一旦InDesignに配置してしまったリンクファイルの配置オプションを変更したいが、(特にWindowsだと)再リンクする際、またファイルパスを辿って画像を指定するのが大変面倒くさいのでどうにかしてください。同僚からそんな依頼を受けて作ったスクリプトです。
これも過去にDTPTransitさんで取り上げていただいたのですが、CC2017からの仕様変更(先の記事を参照)もあり、どうにかしないとと思った次第です。

#target "indesign"
if (app.documents.length == 0) myerror("ドキュメントが開かれていません");
if (app.selection.length == 0) myerror("何も選択されていません");
if (7 > parseInt(app.version)) myerror("InDesignが対応バージョンではありません");

var myDoc = app.activeDocument;
var mySel = myDoc.selection;
if (mySel.length > 1) myerror("2つ以上選択しないでください");

try {
    var f = mySel[0].itemLink.filePath;
    if (!myDoc.place(new File(f), true)) exit();
    }
catch (e){
    alert("選択されたオブジェクトのパスが辿れませんでした\r配置ファイルをダイレクト選択ツールで選択してください");
    }

function myerror(mes){
    alert(mes);
    exit();
    }

配置したオブジェクトをダイレクト選択ツールで直接選択した状態で実行してください。
MacでもWinでも問題なく動作しますが、CS6以降の対応です。