Answered
javascript内でのapp.copyの挙動について
javascriptでaiファイル上の複数のアートボードを順番に複製していくコードを作成中です。
以下のようなコードで、元のアートボードのデータを選択。クリップボードにコピー。アートボードを追加。貼り付け。と行っています。
var srcDoc = activeDocument;
var originArtBoarts = srcDoc.artboards;
for (l = 0; l < originArtBoartLen; l++) {
originArtBoarts.setActiveArtboardIndex(l);
srcDoc.selectObjectsOnActiveArtboard();
app.executeMenuCommand("copy");
/*アートボード追加処理*/
app.executeMenuCommand("pasteFront");
srcDoc.selection = null;
}
が手持ちのWindowsPC2台で動作させたところ1台は、正常に複製できますが
もう一台は1つ目のアートボードは複製できるのですが、それ以降のアートボードには
選択したデータが張り付けられない状態です。(アートボードの追加はできるが、元のアートボード上のオブジェクトなどは複製できていない)追加の情報として正常に動作しないほうのPCでも app.executeMenuCommand("copy");の後にalertで適当な文字を表示->OKとすると正常にオブジェクトの複製ができました。alertではなくwhileループなどで時間経過させてた場合はNG。
illustratorのバージョンはどちらも25.1で各コンポーネントのバージョンもすべて同じでした。
