2011-01-03 14 views
4

私は、Photoshopでいくつかのレイヤーを修正し、PNGイメージとして書き出すスクリプトを作成しようとしています。exportDocument() '保存先フォルダが存在しません'エラー

function SavePNG(saveFile){ 
    var pngOpts = new ExportOptionsSaveForWeb; 
    pngOpts.format = SaveDocumentType.PNG 
    pngOpts.PNG8 = false; 
    pngOpts.transparency = true; 
    pngOpts.interlaced = true; 
    pngOpts.quality = 100; 
    activeDocument.exportDocument(saveFile,ExportType.SAVEFORWEB,pngOpts); 
} 

この関数は、photoshopのアクティブなドキュメントをsaveFileパラメータで指定されたファイルにエクスポートします。

"C:\ images \ result.png"のような単純なパスではうまくいきますが、 "〜/ Desktop /"やいくつかの特殊文字を含むパスのような別のパスを使用しようとするとファイルがエクスポートされず、コピー先のフォルダが存在しません "というエラーメッセージが表示されます。

どうすれば解決できますか?

答えて

8

まあ、私はこれが発生している理由はよく分からないが、あなたは以下の変更を試みることができる:

function SavePNG(saveFile){ 
    var tmpFile = "./tmp.png"; 
    tmpFile = new File(tmpFile); 
    var pngOpts = new ExportOptionsSaveForWeb; 
    pngOpts.format = SaveDocumentType.PNG 
    pngOpts.PNG8 = false; 
    pngOpts.transparency = true; 
    pngOpts.interlaced = true; 
    pngOpts.quality = 100; 
    activeDocument.exportDocument(tmpFile,ExportType.SAVEFORWEB,pngOpts); 
    tmpFile.rename (saveFile); 
    tmpFile.changePath(saveFile); 
} 

をそれが一時ファイルにファイルをエクスポートし、要求されたパスに&移動名前を変更しますパスの問題を解決するはずです。

1

exportDocumentには、フォルダパスではなく完全なファイル名が必要です。このエラーを持つ人々のために

activeDocument.exportDocument(new File("~/foo/"), ExportType.SAVEFORWEB, pngOpts); 
0

photoshop-scriptを使用していない:エラーメッセージ「は存在しません先のフォルダ」

activeDocument.exportDocument(new File("~/foo/foo.png"), ExportType.SAVEFORWEB, pngOpts); 

これは動作しないと得られます。

これは動作します。

エラーは、エクスポート先フォルダにバインドされていない可能性がありますが、エクスポート手順で使用されたフォルダが削除されたために発生します。だから、

  • のいずれかは、輸出ステップ
を再作成、記録時に使用されたフォルダを、再作成、または
  • 関連する問題