こんにちは、エンジニアのオオバです。
ぼくの場合、必要に迫られないとPhotoshopでJSXを書くことはありません。
そして大抵必要に迫られた時はJSXのことを完全に忘れています。
どの言語にも当てはまりますが過去に書いたソースを引っ張り出して思い出しながら書いていく事になります。
ただし時間の経過と記憶からトラブルに出会う時があります。
今回は以下のような。

エラー 8800: Photoshop の一般エラーが発生しました。 この機能は、このバージョンの Photoshop で使用できない可能性があります。
記憶が曖昧な時にこのようなエラーが出たら、あれ、Photohopのバージョン上げすぎたかな...?
と、戸惑ってしまいました。
→11万文字で徹底解説した「DOTweenの教科書」Unityアニメーションの超効率化ツールはこちら
公式リファレンスにAPIの存在を確認する
Adobe Photoshop Scripting
こちらにPhotoshopの各バージョンにおけるAPIリファレンスが公開されています。
リンク
ぼくはPhotoshop2020を使用しているので、こちらのPDFを確認します。
exportDocumentは存在した

特に非推奨、使用禁止的な物は見当たりませんので、使用できると思われます。
存在しないパスを指定するとエラー
結論を書くと、本記事のタイトルの通り挙動から察するに存在しないパスを指定すると失敗します。
失敗したコード
var folderPath = "指定のフォルダパス";
var filePath = folderPath + "img.png";
var file = new File(filePath);
activeDocument.exportDocument(file, ExportType.SAVEFORWEB, pngOpt);
成功したコード
var folderPath = "指定のフォルダパス";
// フォルダを作成する
var tempFolder = new Folder (folderPath);
tempFolder.create();
var filePath = folderPath + "img.png";
var file = new File(filePath);
activeDocument.exportDocument(file, ExportType.SAVEFORWEB, pngOpt);
フォルダを作成してパスを作っておくと成功します。
最後に
どの言語も毎日書いて覚えておくというのは難易度が高くぼくは無理です。
事前に正しくコメントアウトを差し込んでおいて、未来の自分、周りのメンバーが迷わない、
時間を無駄にしないという事を心がけておきたいなと思いました。

この記事が気に入ったらフォローしよう
オススメ記事