終了

Photoshop スクリプト: イラレデータを開いてPhotoshopデータで保存したい

積極的な参加者 ,
Mar 30, 2022 Mar 30, 2022

リンクをクリップボードにコピー

コピー完了

お世話になっております。

 

illustratorのデータをPhotoshopで開き、それをillustratorデータと同じ階層に拡張子前の名前は同じままpsdデータとして保存したいです。

 

しかし、

var doc = app.activeDocument ;
var docPath = doc.path ;

 

同じ階層に保存したくてパスを取得しようとしても、保存されていないというエラーが出てしまいます。

一度保存しないと出来ないのでしょうか。

他にやり方を知っている方がいたら教えていただきたいです。

よろしくお願いいたします。

キーワード
アクションとスクリプト

表示

334

翻訳

翻訳

レポート

レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines

correct answers 1 件の正解

Community Expert , Mar 30, 2022 Mar 30, 2022

aiファイルをPhotoShopで開いた場合は「変換して開いた」ことになります。

開かれた画像は元のaiとも無関係で、新規ドキュメントと同義になります。

パス(ファイルパス)はファイルの置き場所を表すものなので、

一度も保存されていないものは当然パスもありません。

なので、ここは開いた画像ではなく元のaiファイルのパスをもとにしたパスを作成する必要があります。

 

 

var aiPath= File.openDialog ("aiファイルを選択しろ");
var psPath = aiPath.fullName.replace(/\.ai$/, ".psd"); //新規のパス
if(File(psPath).exists == false){ //うっかり上書きしない用
    var doc = open(aiPath);
    doc.saveAs(File(psPath), undefined, false, undefined);
    doc.close(SaveOptions.DONOTSAVECHANGES);
    }
else{
    alert("もうp
...

投票

翻訳

翻訳
Community Expert ,
Mar 30, 2022 Mar 30, 2022

リンクをクリップボードにコピー

コピー完了

aiファイルをPhotoShopで開いた場合は「変換して開いた」ことになります。

開かれた画像は元のaiとも無関係で、新規ドキュメントと同義になります。

パス(ファイルパス)はファイルの置き場所を表すものなので、

一度も保存されていないものは当然パスもありません。

なので、ここは開いた画像ではなく元のaiファイルのパスをもとにしたパスを作成する必要があります。

 

 

var aiPath= File.openDialog ("aiファイルを選択しろ");
var psPath = aiPath.fullName.replace(/\.ai$/, ".psd"); //新規のパス
if(File(psPath).exists == false){ //うっかり上書きしない用
    var doc = open(aiPath);
    doc.saveAs(File(psPath), undefined, false, undefined);
    doc.close(SaveOptions.DONOTSAVECHANGES);
    }
else{
    alert("もうpsdあるから処理をキャンセルしました");
    }

 

 

あ、あと、「解決した」「満足できた」場合は正解マークをつけることで質問の終了を周知できますので、ご協力ください。わりと数ヶ月後にムダに返信がついたりなどもありますので。。

(「いいね」は任意でw)

 

投票

翻訳

翻訳

レポート

レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Mar 31, 2022 Mar 31, 2022

リンクをクリップボードにコピー

コピー完了

ありがとうございます!

 

お教えいただいたコードでやってみたところ、確かに出来たのですが、Photoshopでaiデータを開く時に「PDFの読み込み」の設定ダイアログが出なかったです。設定は一応開く時に毎回チェックしたいのですが、それは可能なのでしょうか?

 

new PDFOpenOptions();

これで設定は出来るみたいですが、毎回同じ設定にするわけではないので、画像を読み込むたびに設定ダイアログで設定してから開きたいです。

 

お手数ですがよろしくお願いします。

投票

翻訳

翻訳

レポート

レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
Community Expert ,
Mar 31, 2022 Mar 31, 2022

リンクをクリップボードにコピー

コピー完了

冒頭にこれを足すと出ます。

displayDialogs = DialogModes.ALL; //ダイアログ強制表示

 

投票

翻訳

翻訳

レポート

レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines
積極的な参加者 ,
Mar 31, 2022 Mar 31, 2022

リンクをクリップボードにコピー

コピー完了

最新

すみません、ありがとうございます!

投票

翻訳

翻訳

レポート

レポート
コミュニティガイドライン
他のユーザーへの思いやりを持ち、敬意を払いましょう。コンテンツの出典を明記し、投稿する前に内容が重複していないか検索してください。 さらに詳しく
community guidelines