【解決】文字スタイルを使わずにまとめて文字属性を変えたい!

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る
文字スタイル風スクリプト アイキャッチ

以前書いた記事【解決】スタイルにショートカットを割り当てたい!により,文字スタイルをショートカットで適用できるようになりました。

でもIllustratorの文字スタイルは以下のように癖が強く,慣れていない人は使いこなすのが難しい面があります。

  • すべてのスタイルが標準文字スタイルの影響下にある
  • スタイルを「強制適用」すると,そのスタイルで指定していない属性は標準文字スタイルのものになってしまう
  • 属性のオーバーライド(スタイルを使わず,直接フォントやサイズなどを指定している状態)がとても強く優先される
  • スタイルを「追加適用」したらオーバーライドのほうが勝ち,結果的にスタイルは無視される

例えば「太字」と「赤文字」の2つの文字スタイルを作ったとしても,両方適用した状態にするには,現実的でないほど繊細な管理が必要になります。

かと言って,いちいち文字パネルをクリックしたり,カラーパネルで値を打ち込んだりするのも面倒です。

そこで今回は,まるで文字スタイルのようにまとめて文字属性を変更するJavaScriptを紹介します。

ダウンロードはこちらです。スタイル機能のようでいて違う物なので,エアスタイルと名付けました。

中にはフォルダ「styles」と「tools」があります。

「styles」がメインのスクリプトです。いろいろ入っていますが内容は同じで,ファイル名で動作を切り替える仕組みになっています。

「tools」は後述するおまけです。

設定方法

以下の方法でエアスタイルにキーボードショートカットを割り当てます。

  • スクリプトのファイル名を textFont='ShinGoPro-Medium' fillColor=CMYK(0, 100, 100, 0).jsx のような特定の形式にすることで,属性名と適用する値を指定
  • スクリプトファイルをショートカット設定ソフトに登録し,自分の好きなキーを割り当てる
  • 割り当てたいエアスタイルの数だけファイルをコピーし,上記ステップを繰り返す

使用方法

こちらは単純で,エアスタイルを適用したい文字かテキストフレームを選択して,設定したキーボードショートカットを押すだけです。なんとも軽快!

airStyle動作 gif画像

ファイル名の形式

次のようなファイル名を指定します。
属性名1=適用値1 属性名2=適用値2.jsx

属性名にはtextFont,fillColor,baselineShiftなどの文字を指定します。使える種類は,Illustrator Scripting Reference JavaScriptのCharacter Attributesの欄にあるものです。大文字・小文字を区別するので,正確に書いてください。

適用値は,属性によって文字,数値,true/falseなどいろいろなものが入ります。こちらも詳しく知りたい人はScripting Referenceを見てください。

属性名=適用値のセットは,グーグル検索のようにスペースで区切り複数指定できます。例では2個ですが,1個でも4個でもお好きな量をどうぞ。

Scripting ReferenceはAdobeの開発者向けサイトからダウンロードできます。

例えばこんなふうに使う

フォント変更

ファイル名:textFont='ShinGoPro-Medium'.jsx
効果:フォントをA-OTF 新ゴMに変える

塗り色変更

ファイル名:fillColor=Gray(60).jsx
効果:塗り色を Black 60 に変える

ファイル名:fillColor=CMYK(0, 100, 100, 0).jsx
効果:塗り色を Cyan 0,Magenta 100,Yellow 100,Black 0 に変える

ファイル名:fillColor=RGB(0, 255, 255).jsx
効果:塗り色を Red 0,Green 255,Blue 255 に変える

ファイル名:fillColor=RGB(00ffff).jsx
効果:塗り色を 00ffff に変える

ファイル名:fillColor=Swatch('[レジストレーション]').jsx
効果:[レジストレーション]という名前のスウォッチを塗り色に適用する。パターンや特色も指定可能

ベースラインシフト変更

ファイル名:baselineShift=-4H.jsx
効果:ベースラインシフトを-4Hにする。単位にはQ・H・mm・ptなどが使え,つけなければpt単位と解釈する

文字比率変更

ファイル名:verticalScale=60 horizontalScale=60.jsx
効果:垂直比率・水平比率をそれぞれ60%にする

上付き文字に変更

ファイル名:baselinePosition=SUPERSCRIPT.jsx
効果:文字の位置を上付きに変更する。そのほかSUBSCRIPTで下付き,NORMALBASELINEで通常の位置に変わる

OpenTypeの欧文イタリックを適用

ファイル名:italics=true.jsx
効果:OpenTypeパネルの「欧文イタリック」にチェックを入れる。falseでチェックを外す

おまけ

フォント名は,スクリプトを書ける人間でも調べるのが面倒なものです。
なのでIllustratorで選択している文字のフォントを調べ,そのフォントにするための命令文を作るスクリプトもつけました。

文字を選択してgenerateFontCommand.jsxを実行してください。選択している文字の内容が命令文に変わります。
それからコピーしてファイル名にペーストすれば完成です。

これでまた少し仕事が速くなりました。今日もさっさと仕事を切り上げて好きなことをしましょう!

コードはこちら。シンタックスカラーがおかしいのは気にしないでください。

このサイトで配布しているスクリプトやその他のファイルを,無断で転載・配布・販売することを禁じます。
それらの使用により生じたあらゆる損害について,私どもは責任を負いません。
スクリプトやファイルのダウンロードを行った時点で,上記の規定に同意したとみなします。

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

SNSでもご購読できます。

広告

コメント

  1. 詠み人知らず より:

    Illustratorって、段落スタイルで管理しようとするとものすごく面倒でどうでも良くなっちゃうんですよねぇ
    文字スタイルだけにしたほうがなんか実用的で

    1. したたか企画 より:

      そうですね。スタートアップ企業みたいに,信頼性はそれほどなくても小回りが利くような感じのほうが合ってる気がします。

詠み人知らず へ返信する コメントをキャンセル