6

Javascript を使用して Illustrator でファイルを保存しようとしていますが、エラーが発生し続けます。

これが機能しますが、私が望むものではありません:

// save as
var dest = "~/testme.pdf";

saveFileToPDF(dest);

function saveFileToPDF (dest) {
    var doc = app.activeDocument;
    if ( app.documents.length > 0 ) {
        var saveName = new File ( dest );
        saveOpts = new PDFSaveOptions();
        saveOpts.compatibility = PDFCompatibility.ACROBAT5; 
        saveOpts.generateThumbnails = true; 
        saveOpts.preserveEditability = true;
        alert(saveName);
        doc.saveAs( saveName, saveOpts );
    }
}

var "dest" は、ファイルを Mac ユーザー アカウントのルートに保存します。ソースドキュメントに関連するファイルをサブフォルダーに保存したいだけなので、これを試しました:

var dest = "exports/testme.pdf";

これにより、「.pdf」が強調表示されたダイアログが表示され、作成済みの「エクスポート」フォルダー内で入力を適切に待機します。何かを入力すると保存されますが、コードで指定されたファイル名「testme.pdf」は無視されます。強調表示された「.pdf」の上に「cheese」と入力すると、「cheese.pdf」が「exports」フォルダーに保存されます。

私もこれらを試してみましたが、うまくいきませんでした:

var dest = "exports/testme";
var dest = "/exports/testme.pdf";
var dest = "testme.pdf";

などなど

私は何が欠けていますか?

4

2 に答える 2

5

saveAsダイアログをポップアップせずに使用するには、グローバル プロパティを使用する必要がありますuserInteractionLevel

var originalInteractionLevel = userInteractionLevel;
userInteractionLevel = UserInteractionLevel.DONTDISPLAYALERTS;

...

userInteractionLevel = originalInteractionLevel;
于 2012-08-25T08:11:57.703 に答える