Affinity Publisherで日本語処理(2)約物のアキ量

2019年07月26日

さて、一般的Webであれば前回の処理だけで十分です。しかし印刷物となると、これでは不満でしょう。下図の赤丸のところの空白が気に入りません。空きすぎて読みにくいです。これを何とかしたいですね。(ちなみWebでもものかのさんとか私とかは印刷物と同じになるよう処理してます)

ただ、この状態ではまずい。というのも余計な文字(「ゼロ幅のスペース」)を入れてしまったから。まずは一旦これを削除します。

削除するには「検索して置換」パネルで、検索文字入力欄の虫メガネアイコンをクリック、もしくは直接「\x{200B}」を入力します。置換欄は何も入力せず、フォーマットも削除します(歯車アイコンから「フォーマットをリセット」)。

後は、「検索」「すべて置換」で削除されます。これで準備は完了です。

対象約物

対象とする約物は次のものになります。

括弧類起し

[{〈《「『【〔〖〘〚〝

括弧類受け

)]}〉》」』】〕〗〙〛〞

句読点

、。,.

中点類

・:;

なのですが、注意点があります。

一般的には「‘’(全角幅一重引用符)」および「“”(全角幅二重引用符)」も含めなければいけないのですが、Affinity Suiteではこれらを入力すると欧文字形になってしまいます。異体字切り替えで個別には対応はできるんですが、一括対応は難しい。ということで一旦除外させていただきます。また中点類でアキ量を変更しなければならないケースは稀な(少なくとも私は書かない)ので、省略します。


補足:Affinity SuiteはOpenTypeの異体字機能には対応しています。しかしながら、日本語の機能(CSSOpenType機能の構文の「東アジア言語の活字」)には対応していません。ただ、全ての異体字(aalt)は使用できるので、そこから切り替えることは可能です。でaaltの何番目になるかはフォントに依存するので、一括で処理できないことになります。

組み合わせの設定

A 括弧類起し+括弧類起し

括弧類の起しが続く場合は2番目以降の文字の「左(上)側にあるアキ」をなくすと読みやすくなります。これを、「前の文字に対してトラッキングを-50%」で実現します。

B 括弧類起し+括弧類受け

普通はこのケースはありませんが、あってもアキがないので何もしません。

C 括弧類起し+句読点

普通はこのケースはありませんが、あってもアキがないので何もしません。

D 括弧類受け+括弧類起し

括弧類の受けに続いて括弧類の起しがある場合は1文字分の空白ができますが、これはどちらかのアキをなくして半角分のアキにすると読みやすくなります。これを、「前の文字に対してトラッキングを-50%」で実現します。

E 括弧類受け+括弧類受け

括弧類の受けが続く場合は括弧類の「右(下)側にあるアキ」をなくすと読みやすくなります。これを、「前の文字に対してトラッキングを-50%」で実現します。

F 括弧類受け+句読点

上記と同じく、括弧類の「右(下)側にあるアキ」をなくすと読みやすくなります。これを、「前の文字に対してトラッキングを-50%」で実現します。

G 句読点+括弧類起し

句読点に続いて括弧類の起しがある場合は1文字分の空白ができますが、これはどちらかのアキをなくして半角分のアキにすると読みやすくなります。これを、「前の文字に対してトラッキングを-50%」で実現します。

H 句読点+括弧類受け

句読点に続いて括弧類の受けがある場合は句読点の「右(下)側にあるアキ」をなくすと読みやすくなります。これを、「前の文字に対してトラッキングを-50%」で実現します。

I 句読点+句読点

普通はこのケースはありません。もしあった場合は、そこには何らかの意図がある筈なので個別に対応すべきです。


ということで、対応方法は「何もしない」と「前の文字に対してトラッキングを-50%」の2つです。さらに「何もしない」ケースは、一般的な文章ではまず発生しません。私のこの記事のように括弧類や句読点について言及しているものは特殊な例です。

ですから多くの場合、まとめて処理しても問題ないはずです。

実行

検索設定

歯車アイコンから「正規表現」にします。文字列は「括弧類や句読点が連続している場合の最後の文字を除いたもの」になります(長い! コード範囲で指定してもそんなに変わらんかった)。もちろん、必要に応じて追加削除してください。

[([{〈《「『【〔〖〘〚〝)]}〉》」』】〕〗〙〛〞、。,.]+(?=[([{〈《「『【〔〖〘〚〝)]}〉》」』】〕〗〙〛〞、。,.])
置換設定

歯車アイコンから「フォーマット」をクリックします。トラッキングを「-500」に設定します。単位が「‰(パーミル)」なので注意してください。

置換文字列は空白です。

あとは「検索」「すべてを置換」を順にクリックします。

そうすると結果、こうなります。

また少し、いい感じになりましたね。

あとは前回の「3.余計な連結の解消」を実行してください(この例題では該当箇所がなかっorz)。


ちょっと待ったぁー。青丸、緑丸について説明しろや」

あ、それですか。青丸は段落の最初にくる括弧類の起し、緑丸は段落の途中だけど行頭に来る括弧類の起しです。各社のルールによってこの場合の文字の左(上)のアキをなくす場合もあります。

そこもやります? 絶対的な決まりじゃないんですけど。

できるんなら見せてよ」

これは別の機能を使うので次回で!


8月1日 訂正

例題の中で「文字の囲み罫機能」とありますが、段落背景色機能でした。