クリエイター手抜きプロジェクト[184]Adobe CS3編 非公開の機能を使う(複数のスクリプトファイルを連続実行する)
── 古籏一浩 ──

投稿:  著者:


Adobe Creative Suites 3(Adobe CS3)には、PDFドキュメントに記載されていない機能があります(InDesign CS3のようにPDFドキュメント自体がなくなってしまったアプリケーションもありますが)。

Extend Script Toolkit 2上からは、データブラウザを使って非公開機能を調べることができます。

その中で、CS3になって正常に機能するものになった便利な機能として、スクリプトを連続して実行するものがあります。これはexecuteScript()という名前の命令で()の中に文字列で指定したスクリプトを実行してくれるものです。例えば、Photoshop CS3でアラートダイアログにOKと表示するには、以下のように指定します。



photoshop10.executeScript('alert("OK")');

例えば、以下のスクリプトをPhotoshop CS3で実行してみてください。ファイル選択ダイアログが2回表示されます。選択するファイルは、実行したいスクリプトファイルにしてください。

fileName = File.openDialog();
fileRef = new File(fileName);
flag = fileRef.open("r");
if (flag)
{
scriptText = fileRef.read();
}
fileName = File.openDialog();
fileRef = new File(fileName);
flag = fileRef.open("r");
if (flag)
{
scriptText2 = fileRef.read();
}
photoshop10.executeScript(scriptText);
photoshop10.executeScript(scriptText2);

実行したいスクリプトファイルの内容をphotoshop10.executeScript()に指定し、必要な数だけphotoshop10.executeScript()を呼び出せば、別々に作成したスクリプトファイルを実行することができます。

実際に運用する場合には、ファイル選択ダイアログよりも指定したパスにあるスクリプトファイルを指定する方が現実的です。以下のスクリプトは、起動ディスクの一番上の階層にあるtest1.jsxとtest2.jsxを連続して実行します。

fileRef = new File("/test1.jsx");
flag = fileRef.open("r");
if (flag)
{
scriptText = fileRef.read();
}
fileRef = new File("/test2.jsx");
flag = fileRef.open("r");
if (flag)
{
scriptText2 = fileRef.read();
}
photoshop10.executeScript(scriptText);
photoshop10.executeScript(scriptText2);

Illustrator CS3の場合は以下のようになります。

fileRef = new File("/test1.jsx");
flag = fileRef.open("r");
if (flag)
{
scriptText = fileRef.read();
}
fileRef = new File("/test2.jsx");
flag = fileRef.open("r");
if (flag)
{
scriptText2 = fileRef.read();
}
illustrator13.executeScript(scriptText);
illustrator13.executeScript(scriptText2);

InDesign CS3の場合は以下のようになります。

fileRef = new File("/test1.jsx");
flag = fileRef.open("r");
if (flag)
{
scriptText = fileRef.read();
}
fileRef = new File("/test2.jsx");
flag = fileRef.open("r");
if (flag)
{
scriptText2 = fileRef.read();
}
indesign5.executeScript(scriptText);
indesign5.executeScript(scriptText2);


【古籏一浩】openspc@po.shiojiri.ne.jp

トップページにGoogle翻訳ガジェットを追加してみました。これで全ページマルチ言語に対応。
< http://www.openspc2.org/
>

アンドロイド携帯は日本で発売されたら買わねば。でも、いつ出るんでしょうか。あと、グーグルハッカソンで作ったゲームに、ランキング登録を付加した改造版が出ていますので、iPhone持っている方はプレイしてみてください。
< http://iphone.cute.bz/gmshot2.html
>

キヤノンのEOS 5D markIIを注文しました。ハイビジョン映像撮影ができるから、といった単純な理由ですが……。
< http://cweb.canon.jp/camera/eosd/5dmk2/index.html
>

アスキーのWeb連載も第7回が公開されてます。
・JavaScriptでとっても滑らか!画像切替のシンプルな技
< http://ascii.jp/elem/000/000/180/180999/
>

マイコミジャーナルのiPhoneゲーム工房もよろしく。
・iPhoneゲーム自作工房11─認識力を鍛えられそうなゲーム
< http://journal.mycom.co.jp/articles/2008/10/25/iphonegame10/
>

photo
Ajaxライブラリで かんたんインターフェイスデザイン
古籏一浩
ビー・エヌ・エヌ新社 2008-06-25

Flashデザインラボ -プロに学ぶ、一生枯れない永久不滅テクニック (Design Lab+ 1-2) jQueryで作る Ajaxアプリケーション Ajax ポケットリファレンス (POCKET REFERENCE) Ajaxライブラリリファレンス マイクロフォーマット ~Webページをより便利にする最新マークアップテクニック~ (Web Designing BOOKS)



photo
改訂第4版 JavaScript ポケットリファレンス
古籏 一浩
技術評論社 2006-10-18
おすすめ平均 star
starJavaScriptを使ったプロジェクトのお供に是非
starJavaScript仮免者以上の方へ
starバランスの良いバイブル
star中級者向けです。

[改訂版] PHP ポケットリファレンス (Pocket reference) 改訂新版 SQLポケットリファレンス (Pocket reference) 改訂第5版 オールカラー  HTML ポケットリファレンス (POCKET REFERENCE) 基礎 Ajax + JavaScript スタイルシート ポケットリファレンス (Pocket reference)



photo
ActionScript逆引きクイックリファレンス―5&MX&MX2004&8対応 for Windows & Macintosh
田中 康博
毎日コミュニケーションズ 2005-12
おすすめ平均 star
starFlash(ActionScript)の開発前の調査にも役立ちます
star良書です。

Flash逆引きクイックリファレンス 8&MX2004対応for Windows & Macintosh 速習Webテクニック FLASH8 ActionScript 実例サンプル47 (Quick master of web technique) Flash Hacks―プロが教えるテクニック&ツール100選 ActionScriptビジュアル・リファレンス (Web Designer’s Handbook Series) FLASH ActionScript スーパーサンプル集 1.0/2.0対応版[CD-ROM付き]

by G-Tools , 2008/10/27