なんでやねんDTP・新館

はてなダイアリーから移行しました…

横組みでの文字揃えの選択

たまに他人の作成したデータを修正することがあるが、異Q数混植で下揃えにする場合、いまだに文字揃えを「欧文ベースライン」に設定しているデータに出くわして驚くことも屢々だ。
その無意味さを明らかにしてみる(環境は未だにInDesign CS2)。


50Qと100Qで以下のような文字列を「文字揃え=仮想ボディの中央」として、テキストフレームに入れてフレームを内容にフィットさせた(25*125mm)。


下線は、すべて「線幅=0.12mm/オフセット=0mm/色=C100%」にして適用。
打ち消し線は、一般的な和文フォントのベースラインは880/1000の位置にあることから逆算して、50Q部分「線幅=0.12mm/オフセット=50Q*0.38/4=4.75mm/色=M100%」、100Q部分「線幅=0.12mm/オフセット=100Q*0.38/4=9.5mm/色=M100%」にして適用。打ち消し線はキレイに繫がっているのが判る*1


「文字揃え=欧文ベースライン」とすると、50Q部分が4.75mm下がることになり、もちろん欧文ベースラインに引かれたシアンの下線はキレイに繫がるが文字面は揃っているとはいえない。ベースラインより下に出ている部分が文字サイズによって違う(この場合文字サイズの12%)のだから当然の結果。QXを使っていた頃はこれしか選択肢はなかった。


「文字揃え=仮想ボディの下」とすると、50Q部分が25Q=6.25mm下がることになるが、これも文字面は揃っているとはいえない。仮想ボディいっぱいにデザインされたフォントならいざしらず、仮想ボディと字面とのアキは文字サイズに正比例するのだからこれも当然。ただ、実際の作業上では文字サイズの差が大きくなければ気にはならないハズ。事実、写植を打っていた頃は小Q数ならこの方法で下揃えにしていたものだ。


正解(?)は「文字揃え=平均字面の下」。テキストフレームとのアキがほぼ揃っているのが判る。


もっとも、その選択は制作物の内容にもよるのだが(私自身は「文字揃え=仮想ボディの中央」を選択することが多い*2)……。


この平均字面の数値をどのような方法で取得しているのかは知らないが*3、明らかに平均字面の小さいと思われるフォントに一部を変更してもそこまでは考えて揃えてはくれないようだくれるのかどうかよく判らない。最後の文字は明らかに下げてくれている


尚、同サイズでのベースラインの微妙なズレは各フォントもつベースラインの差であろう*4
上記部分、ちょっと検証してみたところ、前の二つのベースライン位置はどうも同じようだが……なので、平均字面を考えて少しは動かしているのか? でも上に上がっているのもあるし、よく判らないので、挙動不審ではある。宿題とする*5


※前の二つ(I-OTF新隷書ProとA-OTF 隷書101 Std)はベースライン位置が880/1000にあり、三つめ(FOT-グレコ Std M)は異なっていることは以下の画像から判断できる*6


以下にマズイ例を追加(20110625)



安易に「文字揃え」を「平均字面の下」とするとこんな具合になることを理解すべし。「の」だけサイズが違い、他は同じ(赤ラインは仮想ボディの下)。使うに適した場面(条件)で使うべし。
この場合、行中の最大サイズの文字の中で、平均字面が最大の書体が基準になり、それに下揃えする…同サイズでも平均字面の小さい書体は下がることになり、当然、天地センターは狂うことになる。

*1:蛇足だが、下線・打ち消し線ともにオフセットを0mmにすると同じ位置に線が発生する。また、打ち消し線は自動でもセンターに入るとは限らない

*2:写植時代の名残かもしれないが

*3:後日、アドビの山本太郎さんにお訊ねする機会があり、フォント内部にその情報が書き込まれているという。その数値はフォントデザイナーが設定するので精度はまちまちであろう

*4:すべてのフォントのベースラインが880/1000の位置にあるのではないということ

*5:いつになるやら

*6:ベースラインは880/1000より上にあるので、打ち消し線をセンターに入れるならオフセット数値を減らさなければならない