RE: 仮想ボディと外枠の関係性

Taro Yamamoto 様

 小林 敏 です.

ありがとうございます.だいぶわかってきました.

私は,880:120という数値も根拠のない数値ではないが,そうとは限らないということだと理解してきましたが,それでいいようですね.

行送り方向の位置は,山本さんのいうとおり,付属書体を使用する限り,フォントデザイナーの設定した値で配置すればいいことと私も思います.が,この点ではユーザー側で,けっこう主張が強く,その点で答えがないということが問題のように思っています.

それにしても最近の紙の本の行送り方向のラテン文字の位置,特に縦組では左によりすぎている(完全にディセンダが行間にはみ出している)ような例が多いように思います.

  Taro Yamamoto さんwrote

>先ほどのメッセージで少し言葉が足りなかったので、以下の通り加筆します。
>
>> ところで,ラテン文字の場合,いったいどのような情報がフォントは保持していま
>> すか.以下のY軸の位置はフォントとして持っているのですか.あるいは,ない場合
>> は,フォントから計測できるのですか.
>
>OpenTypeフォントのOS/2テーブルには、Ascender, Descender, Cap Height, x-heightの情報が収容されています。
>
>> こうした位置はフォントデザイナーが決めることだと思います.つまり,和文文字の仮想ボディのどこに,上記のラテン文字の位置を合わせるかを指定できます.
>
>実装上は、先にも書きましたが、デザイナーは、欧文フォント・和文フォントを問わず、BASEテーブルに和文の全角位置が、欧文のベースライン位置(y = 0)と相対的にどの位置にあるかの情報を設定することが可能です。Adobe製の欧文フォントには(多くの場合)BASEテーブルに、Cap. heightの中心が和文の全角ボディの中心の高さと一致するように、和文の全角ボディの位置情報が設定されています。
>
>(ただし歴史的な実装について言えば、初期のPostScript処理系のための和文フォントの形式(Type 1形式に基づく2-byteコードに対応する複合フォント及びそこから発展した、「生の」[SFNTやOpenTypeからは独立した]CIDFontに基づく和文フォントでは、y = -120の位置に、和文の全角ボディの底辺を設定して、その位置の全角ボディを基準にして和文グリフのアウトラインが作られました。そのため、CFF-ベース(CFFはType 1形式に互換変換可能なより圧縮されたグリフ手続きを記述したフォーマット)をアウトライン情報としてもつOpenTypeの和文フォントでも、伝統的にy = -120の位置に和文の全角ボディの底辺の位置が設定されてきました。そしてそのような和文フォントのOS/2テーブルのsTypoAscenderとsTypoAscenderには、和文全角の上辺と底辺の位置のy座標が設定されてきました)。
>
>実装を離れた、和文と欧文との相対的な位置関係の一般的な記述としては「フォントデザイナーが決める」がもっとも正しいと考えます。
>
>山本太郎

Received on Monday, 29 July 2024 03:09:49 UTC