Skip to content

Latest commit

 

History

History
301 lines (152 loc) · 38.8 KB

4_ルビの組版処理.md

File metadata and controls

301 lines (152 loc) · 38.8 KB

4 ルビの組版処理

4.1 はじめに

ルビの字詰め方向の配置処理については,いろいろな処理法が採用されている.また,ルビ処理では,さまざまなケースが出現し,ある要求事項を組版で実現しようとすると矛盾が出てしまう例もある(注の“複雑な処理となる例”参照).こうした事項まで考慮して自動処理を行うためには,かなり複雑な方法となる.

注:ルビのいろいろな配置処理 眺望(ちようぼう)を例に,ルビ処理例のいくつかを示す.

そこで,ある程度の品質を確保しながら,機械的な処理に対応した単純化した処理方法を検討する必要がある.ここでは,特に字詰め方向の処理について簡便なルビ処理方法を実現するための方法を,まず示し,それ以外の処理方法も簡単に紹介する.(どのような事項を考慮したかは後述する.)

なお,注としてルビの形式を利用する例も見掛けるようになった.注は参照しやすように近くにあるのは,望ましい方法であり,また,Web等でもルビの形式も処理が利用できるようになったことから,この形式が採用されるようになったと考えられる.しかし,一般にいうルビに比べ,親文字の文字数は多くなり,逆に親文字も位置だけが示されていればよい場合もある.また,注となると,文字数も多くなる.主に単語や複合語を親文字とし,ルビ文字列の字数もそれほど多くないルビと同じ処理方法で処理するには無理がある.そこで,ルビ形式での注の処理方法を解説した.

注:複雑な処理となる例 できるだけ字間を空けないという条件を満たすために,親文字からはみ出したルビを漢字には掛けないが,仮名には掛ける,とする処理方針がある.しかし,前後が同じ仮名又は漢字となる場合はよいとしても,親文字の前が仮名で,後ろが漢字といったときに,ルビ文字の字数によっては見た目のバランスを壊す場合も出てくる(親文字が1字の例を図〓に示す,上側が漢字には掛けないが,仮名に掛けるとした方針で処理した例).親文字が複数で,親文字全体にルビを対応させる場合でも,同様である(図〓参照).こうした問題を解決するためには,ルールをさらに追加しないといけない(活字組版では個別箇所のケースに応じて配置位置を工夫していたので,その箇所ごとに適当に処理できた).

また,ルビ文字が片仮名の場合,単語としてのまとまりがあり,前後の仮名にも掛けないという処理方法もあった(実際にもルビの字数によっては,仮名にも掛けないとした方が見た目のバランスはよい(図〓参照,下側が仮名に掛けないとした方針で処理した例).これを実現するためにも,さらなるルールの追加が必要となる.

こうした複雑さは,“できるだけ字間を空けないという条件”は満たさないが,前後の仮名にも,はみ出したルビは掛けないという単純なルールにすれば解決できる.〈注はここまで〉

以下に示したルビの字詰め方向の配置処理については,理想ではないが,誤読されないということを考慮し,例外のあまりでない,また,機械的に処理できる簡便な配置処理方法の一案である.

4.2 ルビの使用例

ルビ(ruby)とは,文字及び語のそばに付けて,その読み,意味などを示す小さな文字のことで,振り仮名(ふりがな)ともよばれている.ルビが付けられたとき,その対象となる文字を親文字という.また,ルビの形式を利用し注記を示す方法も行われている.ルビの配置処理を説明する前に,ルビの使用例をいくつか示す.

注:ルビの使用 日本における漢字表記の基準とされてきた“当用漢字表”(1946年11月16日,内閣訓令・告示)の“使用上の注意”において,“ふりがなは,原則として使わない”とあったことから,以前はルビの使用は少なかった.しかし,“当用漢字表”を改正した“常用漢字表”(1981年10月1日,内閣訓令・告示)の“答申前文”には,“読みにくいと思われるような場合は,必要に応じて振り仮名を用いるような配慮をするのも一つの方法であろう”とある.こうしたことから,今日ではルビの使用が増えている.

Webでのルビ及び注ルビの使用例は,その処理が簡単でなかったことから現状では少ないが,組版処理上の問題が改善されていけば,書籍,雑誌,新聞などのルビの使用状況から判断して,今後は増えていくものと思われる.

ただし,ルビは,今日ではいろいろの目的で使用され,また,その組版処理の方法も,書籍などでは,各種の方法が行われている.こうした方法のすべての対応する必要はないであろうが,どこまで対応していけばよいかは議論していく必要がある.ここでは,そうした点も配慮して,ルビの組版処理について解説していくことにする.

いくつかのルビ及び注ルビの使用例を,以下に示す.

(1)1文字の漢字の読み方を示す.

図〓 お寺(てら)の鐘(かね)が

(2)1文字の漢字に片仮名で別の言語で意味を示す.

図〓 の夢(ドリーム)を

注:親文字が1文字のルビ 漢字の読み方を平仮名で示す場合は平仮名ルビ,別の言語で片仮名で示す場合は片仮名ルビと呼び,字詰め方向の配置処理を変える処理法もあるが,ここでは,同一の処理方法を採用した.

(3)漢字の熟語の読み方を示す.

図〓 それは杞憂(きゆう)である 新しい戯曲(ぎきよく)を書く 新しい戯曲(ぎきよく)を書く

注:熟語のルビ 熟語は言葉としてのまとまりがあるが,漢字1字1字に対応した読み方があり,それをルビで示すことになる.従って,熟語の場合,漢字1字1字に対応した読み方を示すことを重視した配置方法(戯曲の前者の例)と,漢字1字1字の対応は無視しないが,熟語としてのまとまりを重視した配置方法(戯曲の後者の例)とがある.

(4)熟語であるが,読み方が訓(熟字訓)である.

図〓 親の田舎(いなか)に行く

注:熟字訓のルビ 熟字訓の場合,通常の熟語と異なり,漢字1字1字に対応した読みではなく,熟語をまとまりとして読むので,親文字全体に対してルビを対応させることになる.

(5)ある言葉に片仮名で別の言語で意味を示す.

図〓 大聖堂(カテドラル)の尖塔(ミナレツト)を

注:言語の意味を片仮名で示す この場合も,漢字1字1字に対応した読みではなく,親文字全体に対してルビを対応させせることになる.

(6)片仮名の語に漢字で意味を示す.

図〓 あるレッセフェール(自由放任)の

注:片仮名の語に漢字で意味を示す この場合も,親文字全体に対してルビを対応させせることになる.

(7)語句などを説明する(注記).

図〓 盃に泡盛(沖縄県で作られる,米を原料とした蒸留酒)をなみなみと注がせて,さらには……

注:語句などを説明するルビ 語句などを説明する注記を行間に配置する方法は,これまでルビとは異なるものとして考えられてきた(行間註などと呼ばれていた).しかし,親文字と対応させ,行間に配置するという点ではルビと同じ処理になるので,ここでは,これらも含めた処理方法を考えた.

(8)両側にルビを付ける.

図〓 白村江 はくそんこう,はくすきのえ

注:両側にルビを付ける 両側にルビを付けるルビは,使用例が少ないことからか,ここでは適用範囲としないことにした.

4.3 ルビの文字サイズ等

(1)ルビ文字の文字サイズは指定による.ただし,デフォルトは親文字サイズの1/2とする(図〓).

(2)ルビ文字のフォント,文字の変形,その他の装飾は指定による.ただし,デフォルトは親文字と同じにする.

(3)ルビ及び注ルビの行送り方向の配置位置は,横組では親文字の上側,縦組では右側とする(図〓).

(4)ルビ文字と親文字の行送り方向の間隔(行間)は,指定による.ただし,デフォルトは行間をゼロする(親文字の文字の外枠とルビ文字及び注ルビ文字の外枠を接して配置するとする)(図〓).

(5)ルビ文字を同一行内で折り返して2行以上にする場合の行間は指定による.ただし,デフォルトは行間をゼロとする.

(6)ルビ文字に使用する文字種は,特に制限しない.漢字や約物も使用できるものとする.

注:ルビ文字が漢字の例 ルビには,主として平仮名及び片仮名が使用されている.例は少ないが,親文字が平仮名の場合,ルビとして漢字を付ける例もあった(振り漢字とよばれていた).現在は,ルビとして,平仮名と混ぜて漢字を使用する例が徐々に増えていることから,文字種は制限しないこととした.

4.4 ルビの字詰め方向の配置処理

4.4.1 ルビの配置処理で考慮した事項

以下のような事項を考慮し,配置ルールを簡便化した配置方法を最初に掲げた.

(1)ルビは,親文字の読み方又は意味を示すものである.そこで,誤読されないことを第一とした.具体的には,親文字列からはみ出したルビ文字は,前後に配置する漢字だけでなく,仮名にも掛けない方式とした.

なお,親文字からルビ文字列がはみ出した場合,前後の文字に掛けるか掛けないかでは,主なものとして以下のような方法がある.

①親文字の前後の文字には,アキのある約物を除き,掛けない.

②親文字の前後の漢字には掛けないが,仮名や一部の約物には親文字サイズの1/2を掛ける.

③親文字の前後の文字には,文字種を限らないで親文字サイズの1/4を掛ける.

なお,この処理は,親文字が1字でも2字以上の場合のルビで共通であるが,原則的な処理として②を選択した場合,ルビ文字が片仮名の親文字全体に対してルビを対応させる場合のルビに限り①とする方式もある.

注:ルビのはみだしと文字の変形 漢字の読み方を示すルビには,3字となるケースは多いが,4字又は5字となる例は少ない.そこで,ルビが3字の場合,ルビ文字サイズを縮小する,または変形(左右を縮小する長体又は天地を縮小する平体)して親文字からはみ出さないようにする方法もある.ただし,ルビが4字又は5字となると,ルビの変形にも限界があるので,ある程度のはみ出しは出てくる.

(2)縦組と横組とで配置処理法を変えることなく,共通の処理ができる方法とした.具体的には,親文字が1字の場合,親文字列とルビ文字列の中心をそろえる方式のみとした.

なお,親文字が1字の場合,従来は,以下のような方法が行われていた.

①親文字列の先頭とルビ文字列の先頭をそろえる.

②親文字列とルビ文字列の中心をそろえる.

③親文字列の先頭とルビ文字列の先頭をそろえることを原則とするが,ルビ文字列の字数,親文字列の前後に配置される文字種,行頭又は行末などにより,①や②だけでなく,それとは異なる配置法とするというかなり複雑な配置方法.

④親文字列とルビ文字列の中心をそろえることを原則とするが,ルビ文字列の字数,親文字列の前後に配置される文字種,行頭又は行末などにより,②とは異なる配置法とする.

(3)2レベルの処理方式とした.第1レベルでは,親文字及びルビ文字(両者を合わせて,以下,親文字群という)のみの情報から,親文字とルビ文字の配置関係を決める.第2レベルでは,親文字群の前後に配置する文字を考慮して,行の中での親文字群の配置位置を確定する.逆に言えば,第1レベルで決めた親文字とルビ文字の配置関係は,親文字群の前後に配置する文字により修正することはしない.また,親文字群が行頭又は行末に配置されることにより,親文字とルビ文字の配置関係を直し,親文字の先頭又は末尾を行頭又は行末にそろえる配置方法は採用しない.つまり,第1レベルで決定した事項は,第2レベルでは修正しない方式とした.

注:ルビ文字と親文字だけで配置位置が決まらない例 前述の③又は④の方法は,親文字及びルビ文字だけでは,その配置位置は決まらない.

注:2レベルの処理方式 複数の親文字である熟語にあって,熟語としてのまとまりを重視する配置法では,親文字の字間で2行にわたる分割を認めている.分割された場合は,分割前の親文字とルビの配置位置は変化する.しかし,例えば3字で構成された親文字列の場合,親文字は3字,1字+2字,2字+1字の3つの組合せがあるが,それぞれの場合において,親文字とルビの配置位置は,それだけで決定され,その配置位置は変化しない.

(4)ルビの配置方法として,JLReqやJIS X 4051(日本語文書の組版方法)では,複数の方法が示されているケースがあるが,ここでは上記の方針による処理方法を解説した.この方法は,原則としてJIS X 4051で規定している方法によった.ただし,処理系定義として採用できる処理方法(オプション)を採用した場合がある.例えば,はみ出したルビを仮名にも掛けないという方法は,JIS X 4051では処理系定義として採用できる方式である.

(5)ルビ文字の文字サイズを大きく(逆に小さく)したいという要求がある.そこで,ルビの文字サイズは,親文字の文字サイズの1/2を初期値(デフォルト値)として採用し,図版では,ルビの文字サイズは親文字の文字サイズの1/2で示したが,空きなどのサイズはルビ文字の文字サイズを基準とするのではなく,親文字の文字サイズを基準として規定することにより,ルビの文字サイズが親文字の文字サイズの1/2以外であっても採用できる配置方法とした.

4.4.2 親文字が1字の場合のルビの配置方法

(1)1文字の親文字と組み合わせたルビ文字列については,注のルビを除外し,2行にわたる分割(以下,分割という)を不可とする.

注:親文字が1字の場合のルビ 親文字が1字の場合のルビは,JLReqでは“モノルビ”とよんでいる.

(2)親文字1字にルビを対応させるルビの字詰め方向の配置処理は,次による.

なお,前述の“配置ルールで考慮した事項”の(3)の2レベルの処理方式でいえば,以下の説明の①及び②項は,第1レベルの親文字及びルビ文字の配置処理であり,③及び④項は,第2レベルの親文字群(親文字及びそれに付随するルビ文字)を行中に配置する処理である.

①ルビの字数が2字以上の場合は,ルビ文字列の字間はベタ組とする.なお,ルビ⽂字が連数字中の⽂字(cl-24),単位記号中の⽂字(cl-25),欧文用間隔(cl-26),欧⽂⽤⽂字(cl-27)のように固有の字幅を持つ⽂字の場合には,それぞれの⽂字の固有の字幅に応じて配置する(図〓参照).

②ルビ文字列と親文字の字詰め方向の中心をそろえて配置する(図〓参照).

③親文字よりルビ文字列の全長が長い場合,親文字からはみ出したルビ文字を親文字の前⼜は後ろに配置する文字に掛けてはならない(図〓参照).

ただし,次に掲げる句点類(cl-06)など,その後ろ又は前に空きがある約物などにはルビを掛ける(図〓参照).(ここで,句点類(cl-06)などの処理に差をつけたのは,句点類(cl-06)などは,文章の区切りとして重要な役割を果たしており,これらの後ろや前後の空きをできるだけ一定していることが望ましく,特にこれらの空きが大きくなると,区切りの意味を変える恐れがあること,また,冒頭の注の“複雑な処理となる例”で述べたような問題もでないことによる.)

  • 親文字の前に配置する終わり括弧類(cl-02),句点類(cl-06),読点類(cl-07),和字間隔(cl-14)⼜は中点類(cl-05)の後ろのアキ(このアキは,中点類(cl-05)以外,通常は親文字の二分(中点類(cl-05)は四分),ただし,行の調整処理で⼆分アキや四分アキが詰められている場合は,調整で詰められた空き量までとする,例えば,四分アキとなっていれば,四分まで)

  • 親文字の後ろに配置する始め括弧類(cl-01),和字間隔(cl-14)⼜は中点類(cl-05)の前のアキ(始め括弧類(cl-01)は通常は親文字の二分,中点類(cl-05)は四分),ただし,行の調整処理で⼆分アキや四分アキが詰められている場合は,調整で詰められた空き量までとする,例えば,四分アキとなっていれば,四分まで)

④親文字列よりルビ文字列の全長が長い場合,行頭ではルビ文字列の先頭を行頭にそろえ(図〓参照),行末ではルビ文字列の末尾を行末にそろえる(図〓参照).行頭又は行末において,親文字の前後にアキが生じていても,ルビ文字が行頭又は行末に接していれば,それでよいとする処理方法であり,JIS X 4051でも採用され,実際にも行われている方法である.

なお,親文字列の先頭を行頭にそろえ(図〓参照),行末では屋文字文字列の末尾を行末にそろえる(図〓参照)方法もある.この方法は,主に(2)の③の方法を採用した場合の方法であるが,(2)の④の方法を採用した場合に行われている.

4.4.3 親文字が2字以上の場合のルビの配置方法

4.4.3.1 親文字が2字以上の場合のルビの配置方法の種類

親文字2字以上の場合,ルビ文字が1字の場合と2字以上の場合に分けられる.ルビ文字が2字以上の場合は,以下の3つの処理方法がある.

(1)親文字全体に対してルビを対応させて配置する.

親文字全体に対してルビを対応させる場合のルビ ベタ組にした親文字列とルビ文字列の全長が異なる場合,主なものとして以下のような方法がある.

注:親文字全体に対してルビを対応させるルビ 親文字全体に対してルビを対応させる場合のルビは,JRLeqでは“グループルビ”とよんでいる.

①短い方の文字列の先頭,末尾及び字間を空ける.先頭及び末尾と字間との比率は,原則として1/2にする.

②短い方の文字列の字間だけを空け,両方の長さをそろえる.

③親文字列とルビ文字列ともにベタ組とし,それぞれの先頭,末尾又は中心をそろえる.

(2)各親文字1字1字にルビを対応させて配置する.

注:各親文字1字1字にルビを対応させるルビ 従来この処理を行う場合,親文字を一体として,それにルビを対応させるのではなく,親文字の1字1字に対してルビをさせていた.しかし,熟語などをまとまりとして音読する場合を考慮すると,親文字を一体として,それにルビを対応させたうえで,かつ,個々の親文字とルビを対応させることが望ましい.

(3)各親文字1字1字にルビは対応しているが,各親文字1字1字に対応するルビ文字列の長さが該当する親文字の字幅よりはみ出さない場合は,(2)と同じ処理を行い,そうでない場合は(1)の処理を行う.

上記の(1)は,親文字を一体として,それにルビを対応させた場合の処理方法であり,(2)及び(3)は,親文字全体をルビを対応させるとともに,親文字の各文字に対してルビを対応させた場合の処理方法である.(2)又は(3)のいずれかとするかは,指定による.個々の漢字の読み方を示すことを重視すれば(2)となり,熟語としてもまとまりを重視すれば(3)となる.子供を対象とする本では(2)の方式が多く,一般の人を対処とする書籍などでは(3)とする方式が多い.

注:熟語のルビ 親文字(熟語)のルビの配置処理として以下のような方法がある. ①各親文字1字1字に対応させてルビを配置する.

②親文字全体に対応させてルビを配置する.

③ルビの字数により①又は②と同じ配置にする.

④熟語内で各親文字と対応するルビが親文字からはみ出さない場合は①の配置とし,各親文字と対応するルビが親文字からはみ出した場合は,熟語内における前後の別の漢字に親文字サイズで1/2まで掛かってよいが,各親文字と対応するルビ1字は少なくとも該当する親文字に掛かっていないといけない,という処理を行う.ただし,この方法には,いくつかのバリエーションがあるが,主な方法はJLRrqの付属書“F 熟語ルビの配置方法”に示した方法である.

注:熟語を単位としたルビ 熟語を一つのまとまりと考え,必ずしも各親文字1字1字に対応させてルビを配置しない方法をJLReqでは“熟語ルビ”とよんでいる.

4.4.3.2 ルビ文字が1字の場合

親文字2字以上で,ルビ文字が1字の場合は,親文字列はベタ組とし,親文字列とルビ文字列の中心をそろえて配置する.なお,親⽂字列とそれに付くルビ⽂字の⽂字列は,⼀体として扱い,分割してはならない.

4.4.3.3 ルビ文字が2字以上で,親文字列全体に対してルビを対応させる場合

ここでは連数字中の⽂字(cl-24),単位記号中の⽂字(cl-25),欧⽂⽤字(cl-27)のように固有の字幅を持った文字(以下,この項では“欧文用文字等”という)と,平仮名(cl-15),⽚仮名(cl-16),漢字等(cl-19)など(以下のこの項では“仮名等”という)の2つに分けて,その組合せで配置方法を説明する.欧文用文字等は,複数の文字をまとめて読むので,字間を空ける処理は,できるだけ避けたいという事情があるからである.いずれの場合も最初に,それぞれをベタ組にした場合のルビ文字列の全長と,親文字列の全長を比較し,配置方法を決める.この場合のルビ文字列の全長と親文字列の全長が同じときは,それぞれをベタ組とし,ルビ文字列及び親文字列の字詰め方向の中心をそろえて配置する(図〓参照).それ以外の場合の配置処理は,次による.(なお,前述の2レベルの処理方式でいえば,以下の説明の(1),(2),(3)及び(4)項は,第1レベル,(5)項は,第2レベルの配置処理である.)

(1)ルビ文字及び親文字が“仮名等”の場合は,次による.

  • それぞれをベタ組にした場合のルビ文字列の全長が親文字列の全長より短いときは,ルビ文字列の字間及びその前後を空け,それぞれの文字列の全長を同じにし,各文字列の字詰め方向の中心をそろえて配置する.空ける量は,ルビ文字列の字間の空き量の大きさ2に対し,親文字列の先頭からルビ文字列の先頭までの空き量及び親文字列の末尾からルビ文字列の末尾までの空き量を1の比率で空ける(図〓参照).ただし,ルビ文字列の先頭及びルビ文字列の末尾の最大の空き量は,親文字の文字サイズの1/2とし,ルビ文字列の字間の空き量を均等に増やす(図〓参照).

  • それぞれをベタ組にした場合のルビ文字列の全長が親文字列の全長より長いときは,親文字列の字間及びその前後を空け,それぞれの文字列の全長を同じにし,各文字列の字詰め方向の中心をそろえて配置する.空ける量は,親文字列の字間の空き量の大きさ2に対し,ルビ文字列の先頭から親文字列の先頭までの空き量及びルビ文字列の末尾から親文字列の末尾までの空き量を1の比率で空ける(図〓参照).

なお,ルビ文字が2字以上で,親文字列全体に対してルビを対応させる場合,ルビ文字の全体と親文字の全体とが対応していることが望ましい.文字列の長さが異なる場合,前述した方法以外に,親文字又はルビ文字の字間を空けて,それぞれの全長をそろえる,それぞれをベタ組にして文字列の中心をそろえるなど,いくつかの処理方法がある.前後のアキ1に対し,字間を2の比率で空ける方法は,活字組版の時代でも,見た目のバランスが良いといわれていた方法である.

(2)ルビ文字が仮名等,かつ,親文字が欧文用文字等の場合は,次による(図〓参照).この方法は,欧文用文字等では,全体の対応よりは,欧文用文字等のまとまりを重視する方法である.

  • それぞれをベタ組にした場合のルビ文字列の全長が親文字列の全長より短いときは,ルビ文字列の字間及びその前後を空け,それぞれの文字列の全長を同じにし,各文字列の字詰め方向の中心をそろえて配置する.空ける量は,ルビ文字列の字間の空き量の大きさ2に対し,親文字列の先頭からルビ文字列の先頭までの空き量及び親文字列の末尾からルビ文字列の末尾までの空き量を1の比率で空ける.

  • それぞれをベタ組にした場合のルビ文字列の全長が親文字列の全長より長いときは,それぞれをベタ組とし,ルビ文字列及び親文字列の字詰め方向の中心をそろえて配置する.この場合,ルビ文字は親文字からはみ出すことになる.

(3)ルビ文字が欧文用文字等,かつ,親文字が仮名等の場合は,次による(図〓参照).

注:ルビと欧文用間隔 ルビ文字が2字以上で,親文字列全体に対してルビを対応させる場合,親文字列又はルビ文字列に欧文用間隔(cl-26)を含むときがあるが,ここでは適用範囲外とした.文字列の長さをそろえる調整に使用する方法と使用しない方法がある.JIS X 4051では文字列の長さの調整に使用しない方法を規定している.

  • それぞれをベタ組にした場合のルビ文字列の全長が親文字列の全長より短いときは,それぞれをベタ組とし,ルビ文字列及び親文字列の字詰め方向の中心をそろえて配置する.

  • それぞれをベタ組にした場合のルビ文字列の全長が親文字列の全長より長いときは,親文字列の字間及びその前後を空け,それぞれの文字列の全長を同じにし,各文字列の字詰め方向の中心をそろえて配置する.空ける量は,親文字列の字間の空き量の大きさ2に対し,ルビ文字列の先頭から親文字列の先頭までの空き量及びルビ文字列の末尾から親文字列の末尾までの空き量を1の比率で空ける.

(4)親文字列よりルビ文字列の全長が長い場合,親文字からはみ出したルビ文字を前⼜は後ろに配置する文字に掛けてよいかどうかは“3.2 親文字が1字の場合のルビの配置方法”で説明した方法による(図〓参照).また,親文字列よりルビ文字列の全長が長い場合の行頭又は行末での配置処理も,“3.2 親文字が1字の場合のルビの配置方法”の処理で説明した方法による.

(5)この方式の場合,親⽂字列とそれに付くルビ⽂字の⽂字列は,⼀体として扱い,分割しない方法が一般的である.しかし,親⽂字列などが長い場合,行の調整処理が困難になり,字間が大きく空いてしまうこともある.これは見た目のバランスを壊す.そこで,親文字列の長さ,またはルビ文字列の長さが一定の値(例えば,親文字が3文字以上)を超える場合は,分割できるとする方法もある. 分割する場合,複合語のように語の構成を考慮し,親文字とルビの対応を考慮する方法もあるが,この処理は,複雑になるので,親文字の分割を優先し,その分割した比率に従いルビ文字列を分割する方法の方が,処理が簡単になる.

4.4.3.4 ルビ文字が2字以上で,個々の親文字にルビ対応させる場合  

個々の親文字にルビ文字を配置する方法は,“3.2 親文字が1字の場合のルビの配置方法”による(図〓に例を示す).なお,各親文字間で,各親文字とルビ文字の組合せを維持したうえで,分割を可とする.

4.4.3.5 ルビ文字が2字以上で,親文字のまとまりを重視する場合

ルビ文字が2字以上で,親文字のまとまりを重視する場合の配置処理は,次による.なお,前述の2レベルの処理方式でいえば,以下の説明の(1),(2)及び(3)項は,第1レベル,(4)項は,第2レベルの配置処理である.

(1)親文字のまとまりを重視する場合でも,各親文字とルビ文字とが対応している.この各親文字に対応したそれぞれのルビ文字列をベタ組にした場合において,各親文字に対応したそれぞれのルビ文字列のすべてにおいて,その全長が親文字の文字サイズ以下のときは,次による.

  • 各親文字に対応したルビ文字が1字の場合は,親文字とルビ文字の字詰め方向の中心をそろえて配置する(図〓参照).

  • 各親文字に対応したルビ文字が2字以上の場合は,ルビ文字列の字間をベタ組とし,親文字とルビ文字列の字詰め方向の中心をそろえて配置する(図〓参照).

(2)各親文字に対応したそれぞれのルビ文字列をベタ組にした場合において,各親文字に対応したそれぞれのルビ文字列の全長が1つでも親文字の文字サイズを越えるときは,7.2.1 ルビ文字が2字以上で,親文字列全体に対してルビを対応させる場合と同じ配置処理とする(図〓,図〓参照).

(3)各親文字間で,各親文字とルビ文字の組合せを維持したうえで,分割ができるものとする.この場合,行末又は行頭で親文字が1字となったときは,“3.2 親文字が1字の場合のルビの配置方法”と同じ配置処理とし,親文字が2字以上となったときは,ここで説明した配置処理とする(図〓参照).

(4)ルビ文字列の全長が親文字列の全長より長い場合,親文字からはみ出したルビ文字を親文字の前⼜は後ろに配置する文字に掛けてよいかどうかは,“3.2 親文字が1字の場合のルビの配置方法”の配置処理と同じとする.また,親文字列よりルビ文字列の全長が長い場合の行頭又は行末での配置処理も,“3.2 親文字が1字の場合のルビの配置方法”で説明した方法による.

4.5 注のルビの配置処理

注のルビは,親文字文字列がゼロ(親文字がempty)の場合,又は,ルビ文字列の長さが親文字サイズで10倍を超える場合に採用するとよい

4.5.1 注のルビの字詰め方向の処理

4.5.1.1 字間の処理

字間処理は,本文と同じとする.ただし,先頭又は末尾に配置する括弧類,句読点の前又は後ろの二分アキは確保しないものとする.また,分割する場合の処理は,本文の処理と同じとし(可能な位置ではルビ文字列は分割できる),行末にアキがでた場合には,そのアキを確保し,行の調整処理は行わない.

4.5.1.2 そろえ処理

 そろえ処理は,次による.デフォルトは(1)とする.

(1)行頭そろえ 親文字列とルビ文字列の字詰め方向の先頭をそろえる.

(2)行末そろえ 親文字列ルビ文字列の字詰め方向の末尾をそろえる.

(3)中央そろえ 親文字列とルビ文字列の字詰め方向の中心をそえる.ただし,文字列の長さがゼロ(親文字がempty)の親文字が行末にある場合を除き,かつ親文字列が分割されないで同一行にある場合にのみ,この処理を行い,そうでない場合は(1)とする.

(4)均等割り 親文字列とルビ文字列の字詰め方向の長さをそろえ,ルビ文字列の字間を均等にあける.ただし,親文字列が分割されないで同一行にあり,かつルビ文字列の全長が親文字より短い場合のみ,この処理を行い,そうでない場合及び文字列の長さがゼロ(親文字がempty)の親文字の場合は(1)とする.

注:均等割りの処理 文字列中に字幅を文字サイズとする文字以外の文字を含んでいても,また,約物を含んでいても,アキは均等とする.(ルビの場合,処理が複雑になるので,できるだけ単純になる方法としたが,処理系で細かく間上げる処理方法を採用することは否定しない.以下の字間を均等に空ける場合も同様とする.)

注:行頭・行末そろえ 行頭・行末そろえは,処理が複雑になることから,採用しないこととした.

4.5.1.3 ルビ文字列が長くなった場合の処理

 ルビ文字列が親文字列より長くなった場合は,前後の行にはみ出すか,又は同一行内で折り返す.いずれによるかは指定による.

(1)前後の行にはみ出す場合は,次の順序でルビ文字列を配置する.

  • 行頭そろえの場合は,親文字の位置から末尾側に延ばし,行の末尾を超えるときは,その行の前方向に延ばし,それでも配置できないときは,段落の末尾側の行に伸ばし,段落の最終行の末尾に達したときは,先頭側に延ばす.なお,ルビ文字列が,段落の先頭及び末尾よりはみ出した場合は,同様にして,前後の段落に延ばす.

  • 行末そろえの場合は,親文字の位置から先頭側に延ばし,行の先頭を超えるときは,その行の後ろ方向に延ばし,それでも配置できないときは,段落の先頭側の行に伸ばし,段落の先頭行の先頭に達したときは,末尾側に延ばす.なお,ルビ文字列が,段落の先頭及び末尾よりはみ出した場合は,同様にして,前後の段落に延ばす.

  • 中心そろえの場合は,両側に延ばし,行の先頭又は末尾を超えるときは,親文字の逆方向の前又は後ろに延ばし,それでも配置できないときは,段落の先頭行の先頭及び末尾行の両方向に延ばす.段落の先頭行の先頭又は末尾行の末尾に達した場合は,逆方向に延ばす.なお,ルビ文字列が,段落の先頭及び末尾よりはみ出した場合は,同様にして,前後の段落に延ばす.

(2)同一行内で折り返す場合は,次の順序でルビ文字列を配置する.

  • 行頭そろえの場合は,親文字の位置から末尾側に延ばし,行の末尾を超えるときは,その行の前方向に延ばし,それでも配置できないときは,その行で複数行に折り返す.そろえは,行頭そろえとする.

  • 行末そろえの場合は,親文字の位置から先頭側に延ばし,行の先頭を超えるときは,その行の後ろ方向に延ばし,それでも配置できないときは,その行で複数行に折り返す.そろえは,行末そろえとする.

  • 中心そろえの場合は,両側に延ばし,行の先頭又は末尾を超えるときは,親文字の逆方向の前又は後ろに延ばし,それでも配置できないときは,その行で複数行に折り返す.そろえは,中心そろえとする.

なお,ルビが複数行となり,行間よりルビの行送り方向の幅が大きなる場合は,行間を広げ,親文字等が重ならないようにする.