忍者ブログ

ぼんぷろぐ

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

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

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

[InDesign]
InDesignで文字組みアキ量設定を編集するのにウンザリした人のためのスクリプト

ver1.0 →ver1.01 元にする文字組みアキ量が『なし』のとき、隠しアキ量になってしまう問題を修正
※ver1.0は『なし』を元に作った文字組みアキ量に対して使用しないでください

(2015.11.20) ver1.01→ver1.2 いちいちダイアログを閉じないで設定を更新できるようにした

(2015.11.23)『アキ量設定を新規作成して編集.jsx』を同梱しました。
テキストを選択して実行すると、適用されているアキ量設定をコピーして新たなアキ量設定を作成し、選択テキストに適用し、同じフォルダ内にある『アキ量かきかえ1_2.jsx』を実行します。

(2015.11.25) ver1.2→1.3
『更新』または『OK』ボタンを押したとき、選択テキストを含む段落には、新しいアキ量設定が即座に反映されるようにした…つもりなのですが、環境によってはならないかもしれません。
・『現在の値に加算』を使ってるとたまに9.999999999とか10.0000000001とかが発生する問題を修正。
※ver1.2から、ダイアログ内をTabキーで移動しようとしても移動できず、かわりにInDesign上にタブが入力されてしまうようです。ご注意ください



表題のとおりウンザリした人向けのスクリプトなのですが、実際にInDesignの文字組みアキ量設定ダイアログを使ってみれば、どなたでもウンザリできるのではないかと思います。

なにしろInDesignでは文字クラスが26種(行頭・行末は1種とみなす)ありまして、設定箇所はその二乗の676から[段落先頭→行末]など不要な組み合わせを引いて648箇所、それぞれに最小値、最適値、最大値、優先度があって計2592箇所。それを一個一個クリックしてキーボード叩いていかなきゃいけないわけですから(『始め括弧類』などで多少簡略化できます)。ちゃんと方針を定めて作れる人なら一晩でできる程度のものなのかもしれないですが、とても『試行錯誤しながら』は無理。やってらんない。

てなわけでもっと効率よく設定変更できるようなダイアログをスクリプトで作ってみました。例によって動作確認したのはCS6@WinだけですがCS4以上なら動くかも。コードは一部除いてバイナリ化してますのでスクリプト書く人の参考にはならんです。

使い方

プリセット以外の文字組アキ量が適用されたテキストを選択して実行すると、↓のようなダイアログが出ます。

1.設定箇所の指定

まずダイアログの左半分で前の文字クラスと後の文字クラスを指定して、アキを設定する箇所を決めます。複数選択可能なので、たとえば前の文字で3つ、後の文字で4つのチェックを入れると3×4=12箇所を一度に設定できることになります。

また、事前に定義した『文字クラスグループ』を使って、一度に複数のチェックを入れることもできます。本家アキ量設定ダイアログにある『始め括弧類』みたいなものです。

2.最小値・最適値・最大値・優先度の設定

右半分の上の段、編集不可能なテキストボックスに、現在の値が表示されます。設定が混在している場合は(混在)と表示されます。『50%(混在)』のように表示されるのは、『混在しているが、直前にチェックを入れた箇所については50%である』という意味です。
下段の編集可能なテキストボックスの方に新しい値を入力します。空欄にすると、そこは現在の値が維持されます。

3.オプション

『条件を指定』をONにすると、その下の4つのテキストボックスが入力可能になります。値を入力すると、最小値・最適値・最大値・優先度の現在の値が条件に一致する所だけ、設定を変更するようになります。空欄は無視されます。

『現在の値に加算』にONにすると、現在の値に入力した値を加えたもの新しい値とします。

『設定後に全ストーリーの再計算を実行』ONにすると、設定後に『全ストーリーの再計算』(Ctrl+Alt+/)コマンドを実行します。これをやらないと新しい設定は既存のテキストに反映されません。

ちゅうい

※必ずバックアップを取ってから使いましょう。ご利用は自己責任で。
※使った後は本家の文字組みアキ量設定ダイアログで意図通りのことができてるか確認しましょう。
※優先度は『なし』を0としていますが最も優先度が高いのは1です。以下、2>3>4>5>6>7>8>9>0という順番になってますのでお気をつけ下さい。

ダウンロード

[アキ量かきかえver1.3]


使い方の例


・始め括弧類→終り括弧類のアキを(最小値,最適値,最大値,優先度)=(0%,25%,50%,0)にする


・すべての優先度を『なし』にする


・かな文字の後のアキの最小値をすべて今よりも5%減らす


・(0%,50%,50%,0)に設定されている所を(0%,25%,100%,5)に変更する
 

・最大値が100%に設定されている所を優先度9にする
 

文字クラスグループの編集

スクリプトの大半はバイナリ化してて編集できないのですが、文字クラスグループを定義する部分だけは編集できるようにしてあります。ほかの行にならって書けば難しくないと思うので、ExtendScriptToolkitなどで開いて追加したり消したりしてみてください。
たぶんこの分類の仕方こそが作業効率化の要だと思うし、各々の文字組アキ量に対する考え方が出る所でもあると思うので、いろいろと工夫していただければ。





ちなみに前回、前々回の記事に書いた『隠しアキ量』については、このスクリプトではいっさい変更しません。一応『隠しアキ量を設定』『中間値をとらない』オプションをつけた別バージョンも作ってはみたのですが、『目に見えない事故のもとを生み出すスクリプトは公開しない』というさっき決めた方針に従って、ここには置かないことにします。欲しい方がいたらツイッターかなにかで言ってください。


おつかレンブラント!
PR

コメント

お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字

プロフィール

kawamoto_α
(あるふぁ(仮))


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

ツイッタ

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



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



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



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