Illustratorでアクションを生成する過程をオブジェクト化

Illustrator, javascript

前回Illustratorでアクションを生成して実行してみましたが面倒です。面付け作業の効率を上げる時によく使ったりするのですが一々書くのも億劫なのでよく使用するアクションをオブジェクト化しました。以下からコードをコピーできます。

Illustrator actions

予め決まったアクションの文字列を返す関数をコンストラクトオブジェクトに渡してインスタンスオブジェクトとして生成。生成したオブジェクトのlaunchActionメソッドでアクションを実行します。リサイズや移動の関数なんかは第二引数にオブジェクトをオプションとして渡すことにより移動量やリサイズの拡大率を調整できます。

これがアクション生成用のオブジェクト。アクション名はランダムにアクション名を生成する関数(なるべく他のアクションとかぶらないように不規則な文字列の羅列を返すようにしてます。)から取得します。

launchActionメソッドはアクションを書き込んで実行。実行後は消去してアクションを読み込んだ形跡がなかったかのように実行します。JSX単体で実行する場合は以下のように事前にincludeで読み込んでください。

#include “./actionCommon.jsx”
#include “./actions.jsx”;
#include “./strokeAndActon.jsx”;
#include “./createAction.jsx”;
CEPの場合は以下のように読み込んでください。

現在使用可能なアクションは

  • 回転
  • 拡大縮小
  • 反転
  • パスアイテムの塗りの色を変える
  • パスアイテムの線の色を変える

具体的には以下のようになります。

# reflectの関数名がグローバルオブジェクトのreflectプロパティと対立する指摘あったのでinverseItemに修正しました。

Beer 寄付してサイトを応援する。