日本語の改行

名前: anonymouse
日時: 2006-06-01 10:11:34
IPアドレス: 85.195.119.*

#まだ、デフォルトの設定で短い文章を組んでみて、漫然と眺めているだけですが、 #もし、以下の認識に誤りがあれば、よろしく、御指摘ください。 pTeXでは、日本語文字列は次のように下処理されます。(順不同) + 和文の文字とそれ以外の要素の間に\xkanjiskipが挿入される。 + 和文の文字同士の間に、0のペナルティとグルーが挿入される。 + 行頭禁則文字の直前のペナルティは大きな正の値\prebreakpenaltyに変更される。 + 行末禁則文字の直後のペナルティは大きな正の値\postbreakpenaltyに変更される。 LaTeXのCJKパッケージでは、日本語文字列は次のように下処理されます。 + 7bit ASCII以外の文字同士の間に、一律なグルー\CJKglueが挿入される。 + 行頭禁則文字の直前にペナルティ10000が設定され、改行は禁止される。 + 行末禁則文字の直後にペナルティ10000が設定され、改行は禁止される。 XeTeXでは日本語文字列は次のように下処理されます。 + 改行可能箇所が決定される。 + 改行可能箇所に小さなペナルティ\XeTeXlinebreakpenaltyとグルーが挿入される。 その後は、TeXの行分割アルゴリズムにしたがって、改行箇所が決定されます。 XeTeXの改行可能箇所の決定に当たっては、かなり複雑な規則が適用されていて、 例えば、pTeXやCJKパッケージでは常に行頭禁則文字である、仮名長音符も 前後の文字列によっては禁則対象でなくなったりする事もあります。 CJKパッケージの代りにCJKutf8パッケージを使用すれば、7bit ASCII以外でも、 fontencodingが指定された文字は上の下処理の対象から外せます。 pTeXでは文字間のグルーはJFMから読み込まれて、文字毎に設定可能です。 \prebreakpenaltyと\postbreakpenaltyは文字毎に設定されます。 #以下は個人的な所感です。異論のある方は御忌憚なくおっしゃってください。 - \xkanjiskipの有無は、タイプセットの品質に決定的に影響する。 - CJKとXeTeXのデフォルトの設定では、グルーがペナルティに対して大きすぎて、 間延びする。 - pTeXでは句読点の禁則ペナルティは10000 (一部は5000)と大きな値だが、 拗音、促音に対しては150と比較的小さめ。CJKやXeTeXのように、一律に 改行を禁止するのは行き過ぎと思われる。 サンプルも用意しましたので、ご意見をお聞かせ願えると幸いです。

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)