忍者ブログ

ぼんぷろぐ

InDesignとかイラレとかのスクリプトよもやま話

新しいブログに引っ越しました。

こちらのブログはもう更新しませんが、コメント欄は生きてますので疑問、ご指摘などありましたらどうぞ。

[イラレ]
イラレのスクリプトパネルっぽいやつに『メニューコマンドを実行する機能』などを追加した


・イラレのメニューコマンドをキーボードショートカットで実行できる機能を追加
・スクリプトを右クリックメニューから編集できるようにした

の2点を更新しました。
前のバージョンにAvastちゃんが反応する問題はアイコンを修正したらなぜか治りました。

ダウンロードはこちら




イラレのメニューコマンドをキーボードショートカットで実行できる機能を追加


と言ってもこんなのはイラレの標準機能でできるわけで、単に使えるキーが増える(無変換キー、マウスの拡張ボタンなど)という程度のものです。

また、メニューコマンドの登録には、ExtendScriptのapp.executeMenuCommandの引数で使われる、メニューに対応した文字列を調べる必要があります。手抜きLab@DTPの現場さんのところに一覧表がありますが、完全ではありません(たとえば後述の『preview』などが書かれていません)。

調べたらAiMenuCommand.txtに、
menuCommandString\パネルに表示されるメニュー名
の形で書き加えます。
デフォルトでは、私が使いたかった以下の4つが登録されています。

fitin\アートボード全体を表示
preview\プレビュー/アウトライン
ink\オーバープリントプレビュー
raster\ピクセルプレビュー

たとえば、previewのキーに『RButton & LButton』を設定すると、右ボタン押しながら左クリックのマウス操作(いわゆるロッカージェスチャ)だけでプレビュー←→アウトラインの表示切り替えができます。

※CS6以降限定です。それ以前のバージョンの方はAiMenuCommand.txtを削除してください。パネルに『メニューコマンド』フォルダが表示されなくります。



スクリプトを右クリックメニューから編集できるようにした


エクスプローラーでの右クリック→編集と同じ挙動なので、通常は.jsxはExtendScriptToolkit、.jsはメモ帳かな?
常にESTKで開きたいけどESTKの開くファイルの指定の仕方がよくわからん
PR

[イラレ]
テキスト、画像、パターンの変形を消去するスクリプト

var sel0=app.selection[0];
switch (sel0.constructor.name){
    case "TextFrame":
    case "RasterItem":
        var m=invertMatrix(sel0.matrix)
        m.mValueTX=m.mValueTY=0;
        sel0.transform(m);
        app.executeMenuCommand('AI Reset Bounding Box');
        break;
    case "PlacedItem":
        var m=invertMatrix(sel0.matrix)
        m.mValueTX=m.mValueTY=0;
        if (sel0.file.fsName.substr(-3).match(/eps/i)){
            m.mValueB*=-1;
            m.mValueC*=-1;
        } else {
            m.mValueC*=-1;
            m.mValueD*=-1;
        }
        sel0.transform(m);
        app.executeMenuCommand('AI Reset Bounding Box');
        break;
    case "PathItem":
    case "CompoundPathItem":
        var c=app.activeDocument.defaultFillColor  ;
        if (c.constructor.name!="PatternColor") break;
        var m=invertMatrix(c.matrix);
        m.mValueB*=-1;
        m.mValueC*=-1;
        sel0.transform(m,0,1,0,0,0);
        break;
}

つかいかた

テキストアイテム、配置画像、埋め込み画像、塗りにパターンを適用したパスのいずれかを1つ選択して実行します。

※テキストのフォントサイズ、水平・垂直比率は元に戻りません
※埋め込み画像の大きさは元に戻りません
※パターンの位置は元に戻りません

したたか企画さんに助言をいただいて制作しました。

(2016.06.28 20:00) 以下の2点を修正
・拡張子が大文字のEPSファイルで失敗する問題を修正
・複合パスに対応しようとした(できてない)

(2016.06.30) さらに修正
・パターンの変形値の取得にドキュメントのdefaultFillColorを使うようにした(したたか企画さんに教えていただきました!)。

これで複合パスのパターンにもちゃんと対応したはず

[イラレ]
イラレのスクリプトパネルっぽいやつに『テキストを複数選択する機能』などを追加した


・無変換キー+マウスドラッグで『テキストの複数選択&線幅・パターンも変形』ができる機能を追加
・Adobe Bridgeを常に最前面に表示する機能を追加(イラレ非起動時にも有効)
・『最前面』チェックボックスを削除し、かわりにIllustratorウィンドウの従属ウィンドウになるようにした

の3点を更新しました。便利だぞー
ダウンロードはこちら



テキストの複数選択



動画では単一テキストエリア内だけですが、複数のテキストエリアでも同時に選択できるようになりました。

ただし、複数テキストエリアで使うには、①文字ツールのキーボードショートカットが『T』になっていること②半角/全角キーで日本語入力のON/OFFができること、という条件が必要です。なんでそんなのが必要なのかといえば、よく分からん現象のせいで一旦ツールを切り替えなくてはならず、スクリプトからツールを切り替える手段は存在せず(たぶん)、仕方なくショートカットキーを送って切り替えたいが、IMEがONになってるとキーを送ってもツール切り替えができないからです。特にカスタマイズしてなければ満たす条件です。


線幅・パターンも変形



環境設定の『パターンも変形する』『線幅と効果も拡大・縮小』を普段はOFFにしておいて、無変換キーを押しながら変形するときだけONするという機能です。

つかいかた


AHK関数内に『テキストの複数選択&線幅・パターンも変形1』『テキストの複数選択&線幅・パターンも変形2』が現れるので、それぞれキー設定ボタンの横に『vk1Dsc07B & LButton』『vk1Dsc07B & LButton Up』を入力して適用します。


別に無変換キーじゃなきゃいけないわけじゃなく、他のキーにしたい場合は『vk1Dsc07B』のところを適当に書き換えればいいのですが、Alt、Shift、Ctrlは他の機能と被るし、Winキーは謎の不具合があってダメなので、他に選択肢が思いつかない。



Adobe Bridgeを常に最前面に表示する機能を追加

タスクトレイアイコンの右クリックメニューでON/OFFを切り替えられます。イラレと関係なく効果を発揮します。



『最前面』チェックボックスを削除し、かわりにIllustratorウィンドウの従属ウィンドウになるようにした

従属ウィンドウはタスクバーに表示されず、常に親ウィンドウより手前に表示され、親ウィンドウが最小化されると一緒に隠れます。

[イラレ]
イラレのスクリプトパネルっぽいもの(Windows用)を作った

以下の情報は古いです。最新版はこちら




イラレのエクステンションではなく単体で動作するWindowsアプリケーションですが、ほとんどAutoHotkeyでできています。
具体的にはAutoHotkeyにホットキーを設定するためのGUIフロントエンドをAutoHotkeyで作り、AutoHotkey付属のコンパイラでexeファイルにしたものです。(AutoHotkeyの説明はこっち



ダウンロード

イラレのメニューコマンドをキーボードショートカットで実行できる機能を追加
スクリプトを右クリックメニューから編集できるようにした

詳しくはこちら


  • 2016.06.15 バージョン0.2 公開
無変換キー+マウスドラッグで『テキストの複数選択&線幅・パターンも変形』ができる機能を追加。
Adobe Bridgeを常に最前面に表示する機能を追加(イラレ非起動時にも有効)。
『最前面』チェックボックスを削除。
Illustratorウィンドウの従属ウィンドウになるようにした。

詳しくはこちら

  • 2016.05.31 バージョン0.1 公開



つかいかた


①AiScriptLauncher.exeを起動します。初回起動時にはフォルダ選択ダイアログが出るので、スクリプトが入ったフォルダを選択します。

②フォルダ内のスクリプト(*.jsx , *.js)がツリー表示されます。ダブルクリックでスクリプトが実行できます。

キーボードショートカットの設定


キーボードショートカットの設定は2つの方法があります。

プロフィール

kawamoto_α
(あるふぁ(仮))


InDesignで新聞組版のようなことをしています。

ツイッタ

※ブラウザによっては当ブログからDLしたzipファイルが拡張子なしになることがあるようですが、.zipを補って開いてください。



イラレ用トーンカーブスクリプト(¥1500)



クロソイド式角丸長方形スクリプト(¥500)
Illustrator用
InDesign用



イラレスクリプトをキーボードショートカットで実行するやつ(Win用)