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

木田泰夫 様
みなさな

 小林 敏 です.

文字の基準位置(原点)については,山本さんの指摘した種類でいえば,それぞれが利点と欠点を持っていると思いますが,和文だけを考えると,私は,写植の伝統を引きついたコンピュータ組版で採用されていた以下が,ある種の合理性を持っていると思います.
縦組では,仮想ボディの上部の左右中央
横組では,仮想ボディの左端の上下中央

問題箇所は,主に以下の6つです.この計算がめんどう
行頭 常にあり
行末 常にあり
領域内の行送り方向の開始位置 常にあり
領域内の行送り方向の終了位置 紙では常にあり,Webでもあるか?
字詰め方向の異なるサイズの連続 ケースは多い
行送り方向での段落間の異なる行間 ケースは多くない

これを原点の位置との関係で,どう計算するかを考えてみると,上のようになりそうだし,実際の処理系では,これを採用していたという例があるからです.

ところで,ラテン文字の場合,いったいどのような情報がフォントは保持していますか.以下のY軸の位置はフォントとして持っているのですか.あるいは,ない場合は,フォントから計測できるのですか.
ベースライン
ミーンアライン
キャップライン
アセンダライン
ディセンダライン

こうした位置はフォントデザイナーが決めることだと思います.

そのうえで,この情報があるのであれば,ユーザーとして,実際の細かい数値は知らなくても,ラテン文字の位置は理解できるので,和文文字との行送り方向の位置は,指定できます.その場合,和文フォントでは,原点位置と仮想ボディの大きさは決まっているとしますが,必要なことは,仮想ボディのサイズだけです.

つまり,和文文字の仮想ボディのどこに,上記のラテン文字の位置を合わせるかを指定できます.

1 ベースラインとキャップラインの中心と和文文字の仮想ボディの中心をそろえる
2 アセンダラインとディセンダラインの中心と和文文字の仮想ボディの中心をそろえる
3 ベースラインを和文文字の仮想ボディの下端にそろえる
4 和文文字に,もしベースラインの位置があるのであれば,それにラテン文字のべーラインをそろえる
5 和文文字の仮想ボディのY軸の指定位置にラテン文字のベースラインの位置を合わせる

Natさんの苦労は,よくわかりますが,まずはユーザーということでは,つまり実際の日本語組版ではどうするのか,どんな選択があるかを考えるということであれば,以上のような考え方になるということです.

それとも,さらにふみこんだ説明をしますか? 私は個人的には興味はありますが,どうするかは,皆様の考え方におまかせいたします.

Received on Sunday, 28 July 2024 23:07:08 UTC