Fireworks のコマンド

2008/12/11

こんにちは。きんくまです。
しかし、あれですね。JavaScript恐るべしですね。なんちゅーかあなどれないというかなんというか。
今はPrototypeをさらっと触ったあとに、jQueryを勉強してるところです。
JavaScriptは、オブジェクト指向もできるし、カスタムイベントなんかも登録/解除できるし、イージングも例のやつを一通りできるので、ASやってたひとなら、結構簡単にJSもあやつれるようになるんじゃないかなと思います。
書き方がちょっと慣れない感じもあるんですが、それはAS2→AS3のときみたいな感じを思えばおんなじようなものかと。
たまたまお仕事でJSのスライドショーみたいのをこれから作る機会を得たので、また何かわかったら書いてみようと思います。

で、Fireworksの拡張機能についてです。
私みたいに「ここのところをコマンド化できれば、、、。」なんて思いながらやっている全国5人ぐらいのFireworks機能拡張ファンの皆様お待たせしました。
Fireworksといえば、
1、本屋に行っても単品で売っていない(DreamWeaverとの抱き合わせ販売(中身で)ならあり)
2、Photoshop、Illustratorが太陽なら、Fireworksは影
みたいなイメージだったりしてさびしい限りです。Flashの拡張機能の情報は結構あると思うんですが、Fireworksの情報はあんまりないので、MXPのインストーラー作るところまで何回かに分けて書いていきましょう。

参考)今回作成するにあたってこちらのサイトを参考にさせていただきました。ありがとうございます。
Fireworks,Flash / 拡張パネル / MXPファイルにしました(ピクセルイメージさん)

まずは簡単なところから、上のメニューから
ウインドウ→ヒストリパネルを開きます。

何かステージ上で、操作をしていくとこのパネルにどんどん履歴が入っていきます。
履歴を選択して、「再実行ボタン」をおせば、繰り返しそのコマンドが適用されます。

じゃあ、このコマンドを毎回使えるようにしてみましょう。
2のボタンを押すと、以下のダイアログがでます。

ここに好きな名前で保存します。

これを使うには上のメニューから
コマンド→保存した名前のコマンド
を選択すると実行されます。もし、複数の履歴を選択した状態で保存するとそれらがまとめて実行されるので便利です。
もし保存したコマンドを削除したいとかいう場合は、
コマンド→保存したコマンドの管理
を選べばいろいろできます。

さて、ここからもうちょっとカスタマイズしてみます。

履歴のどれかを選択してから、上の図の1のボタンを押してみましょう。するとクリップボードにコマンドがテキストでコピーされるので、テキストエディタにペーストします。例えばこんな感じ

fw.getDocumentDOM().moveSelectionBy({x:122, y:75}, false, false);

これはJavaScriptのコードです。このコマンドが何を示しているのかは、
ヘルプ→Extending Fireworks
を開いてみましょう。見事に英語なんですが、ここにそのAPIが全て書かれています。Adobe製品だとPDFなんですが、Macromedia製品ユーザーは同じようにするとPDFじゃなくてちゃんとしたメニューウインドウが表示されます(8の場合)。
さきほどのコマンドは
Fireworks JavaScript API→Document functionsかFireworks functions
に載っています。

いきなりこのヘルプをみてもよくわかんないと思うので、いろいろな操作を実際のステージ上で行ってこれを、クリップボード経由でテキストファイルにもってきて、ソースを確認する作業を繰り返すと、何らかの規則性が見えてくると思います。
さきほどの履歴を保存する方法でもいろいろとできるのですが、条件分岐とかはできなかったり、履歴機能からはできないコマンドもあったりするので、JavaScriptを使った自作スクリプトを作ることでやりたいことができるようになります。

私が実際に作業をしていてえらく手間だと感じているのがマスクの処理です。デフォルトでマスク処理をすると、マスクがなぜかグレースケールでのマスクになってしまっています。これを毎回パスのマスクにするのにショートカットもなく面倒くさい。
それをパスでマスクするスクリプトが以下のものです。

fw.getDocumentDOM().group("mask to path");

これをどうすればよいかというと、まずこれをテキストエディタにもってきて、例えば「MaskByPath.jsf」なんて名前で保存します。拡張子が「jsf」なのがポイントです。テキストエディタで、jsfとやってもあとから「.jsf.txt」なんて余計な名前がついちゃう場合があるので、そういう場合はあとから名前を書き換えてください。

あとはメニューから
コマンド→スクリプトの実行
を選べば、ダイアログが立ち上がるので、さきほど保存したファイルを選択すればOK。

OKなんですが、毎回このダイアログを設定するのが、めんどくさいです。なので、デフォルトでコマンドに入れてしまいましょう。

C:¥Program Files¥Adobe¥Adobe Fireworks CS3¥Configuration¥Commands

Program Filesの中からFirewoksを探して、Configuration→Commandsの中にさきほどのjsfファイルを入れてみます。それからFirewoksを再起動します。すると、メニューのコマンドを見てみるとさきほどの自作スクリプトが表示されています。

このデフォルトでコマンドメニューの中に入ったことでショートカットを割り当てることができるようになります。
編集→キーボードショートカット
でショートカットを割り当てておけば、マスクが一発でパスでできるようになります。

とりあえずは、今回はここまで。


自作iPhoneアプリ 好評発売中!
フォルメモ - シンプルなフォルダつきメモ帳
ジッピー電卓 - 消費税や割引もサクサク計算!

ページトップへ戻る