0

私は JXA スクリプトを初めて使用しますが、現在職場で使用されているいくつかの古いスクリプトのトラブルシューティングを試みています。彼らは InDesign ドキュメントをループし、それに基づいていくつかの PDF を作成します。以前は、"~/PDFExports" というフォルダーに保存されていました。ただし、これは 10.10 では機能しません。

PDF を "~/" に配置するようにコードを変更すると、正常に動作します。そこから、ファイルを「~/PDFExports」に移動したいのですが、その方法についての答えが見つからないようです。ObjC を呼び出したり、Application('Finder') を呼び出したりすることを見てきましたが、どちらも機能しません。どちらも未定義を返します。

ここに基本的なものが欠けているだけですか、それともJXAでファイルを単純に移動するのは本当に難しいですか?

編集:問題のフォルダーを作成する方法と、Finderで作業しようとする方法の構文。

//This is called in the Main function of the script, on first run.

var exportFolder = new Folder(exportPath);
if(!exportFolder.exists) {
    exportFolder.create();
}

//This is called right after the PDF is created. file is a reference to the 
actual PDF file, and destination is a file path string.

function MoveFile(file,destination){
   var Finder = Application("Finder");

   Application('Finder').move(sourceFile, { to: destinationFolder });

   alert("File moved");
}
4

3 に答える 3

1

アドビのアプリには、長い間独自の組み込み JS インタープリター、JS API、および.jsxファイル名拡張子が含まれていました。JXA とは関係がなく、互換性がありません。

InDesign の JSX ドキュメント:

http://www.adobe.com/devnet/indesign/documentation.html#idscripting

(ところで、Adobe アプリの自動化に JXA を使用しないことを強くお勧めします。JXA には多くの欠落/壊れた機能とアプリケーションの互換性の問題があり、実際には生産作業には適していません。)

JSX に関するヘルプを得るのに最適な場所である、Adobe の InDesign Scripting フォーラムへのリンクを次に示します。

https://forums.adobe.com/community/indesign/indesign_scripting

于 2015-08-08T12:05:54.087 に答える