忍者ブログ

ぼんぷろぐ

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

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

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

[イラレ]
イラレ文字組みは実はすごく高度なカスタマイズができるという話

イラレでは、段落パネルで『文字組み』が『なし』のときは、そのまま欧文と同じコンポーザーで文字組みされます。
『なし』以外の、『約物半角』とか『行末約物半角』とかを選んだときには、日本語組版独自の機能が働きます。

その日本語組版独自の機能とは次の2つです。

①全角約物を半角にする。
(参考:ものかの先生「文字組みアキ量設定の大前提」)

②文字組みアキ量設定に従って文字間のアキを作る。

文字組みアキ量設定には各文字クラス間のアキが定義されています。文字クラスというのは『読点類』とか『始め括弧類』とかいうアレです。文字をいくつかのグループに分けたものです。したがって、文字組みアキ量設定から文字間のアキを決めるには「どの文字がどの文字クラスに分類されているか」というデータが必要です。

また、①を行うためには、「どの文字をどうやって半角にするか」というデータが必要です。「'。'は右側半分を削る」とか、「'・'は左側25%と右側25%を削る」とかです。

まとめると、①②を行うためには次の3つのデータが必要ということになります。

(a)全角約物とみなす文字と、それを半角にする詰め方のリスト

(b)文字クラスの分類リスト

(c)文字組みアキ量設定

でーー、タイトルの話なんですが、
InDesignではこのうち(c)しかいじれないのに対し、
イラレでは(a)~(c)の3つすべてをいじることができるのです。すごいね!

とは言えそんなのを設定するUIが用意されてるわけではありません。
文字組みアキ量設定の設定ダイアログもInDesignと比べてかなり大ざっぱです。

いじるには、文字組みアキ量設定の設定ダイアログから書き出せるmjkファイルを直接編集しなくてはいけません。mjkファイルは一部バイナリがまじったテキストデータで、編集するのは結構面倒です。

そして、『(b)文字クラスの分類リスト』をいじったmjkファイルについては、ちょっとしたバグがあります。

実験してみましょう。

イラレのデフォルトの文字クラス分類には、『ヴ』がどの文字クラスにも含まれていないという問題があります。
これをカタカナの文字クラスに含まれるよう修正したものを作ってみました。

実験用ファイルのダウンロード

まず普通の行末約物半角。『ヴ』がどの文字クラスにも含まれていないため、終り括弧類→カタカナ間、カタカナ→始め括弧類のアキが作られず、詰まってしまっています。




次に、文字クラスを修正したmjkを読み込んだ状態です。うまくアキが発生してます。ここまでは成功。


このドキュメントを保存して閉じ、再度開きます(イラレ自体は終了させずに)。テキストを編集しようとするとこんなダイアログが出ます。

OKを押すとまた詰まってしまいます。

次は新規ドキュメントを作成し、このテキストフレームをコピペしてみます(このとき文字組が『なし』や『行末約物半角』に変わっていたら、再度コピペし直してください)。
ここでアピアランスパネルから『塗り』を追加してみると、こんなことが起こります。

アピアランスの塗りはカスタマイズした文字クラスに、文字の塗りはデフォルトの文字クラスに従っているのです。これは明確にバグと言っていいでしょう。


えー、いろいろと検証してみましたが(数年前ですがしたたか企画さんにも検証にお付き合いいただきました)、これはどうも「mjkを読み込んだドキュメントをそのまま保存した」ことから発生しているようで、
「ドキュメント1でmjkを読み込む→読み込んだ文字組みを適用したテキストをドキュメント2にコピペ→ドキュメント1は保存せずに閉じる→ドキュメント2を保存する」という手順を取り、
以降はmjk読み込みを行わず、コピペを使って文字組み設定をドキュメントに取り込むという運用をすれば回避できるようです。

また、このバグは(b)の「文字クラスの分類リスト」を変更した場合のみ発生し、(a)(c)だけを変更したものでは発生しません。

ということで、文字クラスのカスタマイズについては個人的には一応使えるんだけど、このへんのバグがなくなればもっとみんなで遊べるのに…という話でした。


あ、もうひとつ致命的ではないけど直してほしい問題が。
イラレで「イラレデータを含まないpdfファイル」を開いたとき、最近作ったり編集したりした文字組みアキ量設定がすべて読み込まれてしまいます。
これを防ぐにはイラレを起動してない状態でユーザーデータフォルダのAIAppResourcesを削除する必要があります。面倒なのでなんとかしてほしいものです。


おしまい



おまけ


昔ツイッターで公開した自作の文字組み設定を置いておきます。いじってるのは(c)だけなのでバグは起きないはずです。
[ダウンロード]


ppb行末半角:デフォルトの行末約物半角に、優先度(※1)をなくすなどの修正を加えたもの
ppb行末半角w8:和欧間を25%→12.5%に変更
ppb行末半角w8y4:約物まわりのアキを50%→25%に変更

和字と英数字で文字サイズが違うとき、和欧文間隔が不揃いになる問題→https://twitter.com/kumihan_odin/status/1130417504633925633
和欧文間隔を変更しても英数字と小字の間隔が変わらない問題→(Illustratorの「文字組アキ量設定」の限界 - なんでやねんDTP・新館

などが解消されています。

※1 優先度ていうのは、たとえば追い込み処理のためにアキを詰めていくとき、読点の後のアキが完全になくなってから、句点の後のアキが詰まりはじめる、というようなことを実現するための設定値です。InDesignでは設定ダイアログで変えられます。
 優先度があるのとないの、どちらが正しいのかは知りませんが、私はない方が好きです。調整できる部分すべてを均等に使って調整した方が、調整していること自体が目立たなくなるからです。

 ちなみにイラレには、優先度がある文字組み設定と『文字ツメ』を併用したとき、優先度高い部分が詰まりすぎるバグがあります。優先度をなくすとこれも回避できます。
PR

コメント

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

プロフィール

kawamoto_α
(あるふぁ(仮))


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

ツイッタ

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



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



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



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