2017-11-19 8 views
0

Photoshop JSXを使用して、指定したファイルが既にPhotoshopで開いているかどうかを確認しようとしています。もしそうなら、私はそれに切り替えたい。もしそうでなければ、私はそれを開きたいと思います。私はこれがかなり基本的だとわかっていますが、助けていただければ幸いです!テストのためのPhotoshop Javascript - ファイルが開いているかどうかを確認し(アクティブな文書に切り替える)、開いていない場合は

var openFiles = app.documents; 
 
if (openFiles.includes filename) { 
 
    app.activeDocument = filename; 
 
    } 
 
else { 
 
    open(filename); 
 
    }

+0

アプリが見つかりません.documents.includes、どのバージョンで作業していますか? – Harry

+0

ハリー、ありがとう。私は最新のCC 2018バージョンを使用しています。実際にはドキュメントにはありません。私はそれがPhotoshopの機能から独立したjavascriptコードとして機能するかもしれないと思った。これは可能ではないかもしれません...あなたが最近のファイルのリストを得ることができますが、必ずしもすべてがアクティブに開いているわけではありません。 – user8422605

答えて

0

ないPhotoshopのここが、私はあなたにとにかく自分の問題に対処する方法についてのアイデアを与えることができます。あなたが不幸にも想定しているように、JavaScriptには組み込み関数はありません。役立つかもしれない何

はあなたがトラフすべてのドキュメントを反復することです:だけ.LENGTH、上記のコードで

for (i=0;i<app.documents.length;i++){ 
    if (app.documents[i].source.indexOf(filename) != -1){ 
     //the file you are looking for is already open 
    } 
} 

と.indexOfではJavaScriptネイティブです、他のすべてのものは、Adobe固有のものです。 "app.documents [i] .source"にソースファイル名が含まれているとわからない場合は、Adobeドキュメントの "DocumentInfo"の他のプロパティをすべて試すことができます。

+0

ありがとう、ハリー。それは私のためにエラーを投げている(未定義はオブジェクトではない)が、私はそれをさらに実験し、解決策があるときにここで更新する。あなたは私を素晴らしいスタートにしてしまいました。そして私はそれを感謝します! – user8422605

関連する問題