リンクをクリップボードにコピー
コピー完了
PhotoshopのスクリプトをJavaScriptで記述しておりますが、
開いた画像のファイル容量を取得したく思います。
下記のように横サイズや縦サイズ、解像度を取得できたのですが、
ファイル容量はどのように書けば取得できますでしょうか。
また、容量はMbyteで取得したく考えております。
var docWidth = doc.width; //横サイズ
var docHeight = doc.height; //縦サイズ
var reso = doc.resolution; //解像度
ご存知の方いらっしゃいましたら、ご教示いただけますと幸いです。
よろしくお願いいたします。
リンクをクリップボードにコピー
コピー完了
ドキュメントプロパティには容量に関するものはありません。
何を知りたいかによって情報の取得手段が異なるのですが、保存ファイルの容量であれば、File自体をreadすれば容量は簡単に測れます。容量の大きいものはやりたく無いですけど…
リンクをクリップボードにコピー
コピー完了
ご回答ありがとうございます。可能であればどのように記述すればよいかお教えいただけませんでしょうか。
リンクをクリップボードにコピー
コピー完了
非常に基本的なもので、エラー処理などは考慮していません。
FileオブジェクトをBINARYモードで開き1バイトずつフェッチしてカウントします。
var f = File.openDialog("Select Target File...");
f.encoding = 'BINARY';
var i = 0;
f.open("r");
while (!f.eof){f.readch();i++;}
f.close();
alert(i);
リンクをクリップボードにコピー
コピー完了
ありがとうございます! 試してみます!
リンクをクリップボードにコピー
コピー完了
@Yamonov さんのご指摘がありまして、Fileオブジェクトにはlengthプロパティがあるのでそれを参照すると良いようです。
よって……
var f = File.openDialog("");
alert(f.length);
で良いようです。
リンクをクリップボードにコピー
コピー完了
ありがとうございます! かなりシンプルなコードでいけますね。
早速試してみます。
リンクをクリップボードにコピー
コピー完了
無事、実装できました。ありがとうございました!