Rules for Simple Placement of Japanese Ruby
ルビの簡便な配置ルール

A simple set of rules for placement of Ruby text in Japanese typography.

This document was initially written in Japanese and translated to English by the Japanese Writing Technology Working Group of the Advanced Publishing Laboratory of Keio University.

It represents the subjective view of its authors and contributors as to one possible approach to address the problem, and does not claim to be the only possible solution. It is submitted to present a non-Japanese speaking audience with this particular approach, and to encourage discussion of this topic.

The original Japanese version is available in PDF format.

Introduction はじめに

Ruby is the name given to the small annotations in Japanese content that are rendered alongside base text, usually to provide a pronunciation guide, but sometimes to provide other information. (See the article “What is ruby” by the internationalization Working Group for more information.)

The Difficulties of Ruby Processing ルビ処理のむつかしさ

When performing ruby layout in Japanese, the following factors need to be considered in order to decide on the position:

ルビの組版処理は,次のような事項を考慮して,その配置位置を決める必要がある.

  1. How to handle the correspondence between the base characters and the ruby

    親文字とルビの対応をどう処理すればよいのか

  2. What to do when the string of base characters is longer than the ruby string

    親文字の文字列の全長に比べ,ルビ文字の文字列の全長が短い場合,どう処理すればよいのか

  3. What to do when the string of base characters is shorter than the ruby string

    親文字の文字列の全長に比べ,ルビ文字の文字列の全長が長い場合,どう処理すればよいのか,親文字の文字列からルビ文字の文字列がはみ出してよいのか

  4. When the ruby string protrudes from the base character string, whether it can be allowed to be laid over the characters preceding or following, and whether this affects the position of the base characters

    親文字の文字列からルビ文字の文字列がはみ出した場合,前後に配置する文字や約物に掛かってよいのか,また,このことは,親文字とルビとの配置位置に影響するのか

  5. When the ruby string protrudes from the base character string, and the base character string is at the start or the end of the line, whether the base character string or the ruby string should be aligned with the line edge

    親文字の文字列からルビ文字の文字列がはみ出した場合において,行の先頭又は末尾に配置するときは,親文字の文字列の先頭又は末尾を行の先頭又は末尾にそろえるのか,それともルビ文字の文字列の先頭又は末尾を行の先頭又は末尾にそろえるのか

  6. When there are multiple base characters, whether there can be line wrap opportunity between them

    親文字が複数の場合,2 行にわたる分割をしてよいのか

In movable type typography, such matters were resolved based generic principles, and could always be corrected during the proofreading phase. Essentially, each case was adjusted individually in a flexible manner.

活字組版では,こうした場合,原則的な考え方に従って処理し,問題があれば校正段階で修正の赤字が入り,それに従って直していた.いってみれば,個別箇所で臨機応変の工夫をして配置位置を決めていた.

In computer-based typesetting, the layout needs to be more or less determined based on predetermined rules, but it remained necessary to adjust the results in certain cases, for example by changing the association between base characters and the ruby string, or by switching to a different placement policy.

コンピュータ組版では,ある程度は,配置方針を決め,一定のルールに従って配置処理をしていたが,個別箇所で,親文字とルビ文字の対応を変える,あるいは配置処理方針を変えるなどの工夫も必要とした.

Web Ruby placement Web での配置処理

When thinking about computing placement for web content, it is not practical to decide on the positioning case by case as was done in movable type typography. It is therefore necessary to decide upon comprehensive rules that provide solutions to all the problems listed above, so that placement may be determined fully automatically. Considering all the possibilities that existed in movable type typesetting, the system to be designed needs to be very complex.

Web での配置処理を考えた場合,活字組版のように個別箇所で配置位置を工夫する処理は避けるのが望ましい.となると,上記の問題をすべて解決できる配置処理方針を決め,処理系に実装していく必要がある.活字組版で理想とされていた処理方法をカバーするとなると,かなり複雑な処理方針を考える必要がある.

However, when considering the ideal positioning of ruby, it seems inevitable that exceptions will occur, causing issues.

しかし,ある程度理想的な配置処理を考えたとしても,ルビ処理では,どうしても例外事項が発生し,問題がでる可能性がある.

In such cases, rather than ideal positioning, we must at least make sure that the positioning causes no misunderstanding; there are also practical limits to how complex the system can be in order to be practically implementable.

そこで,理想ではないが,誤読はされない,といった範囲で,例外のあまりでない,また,機械的に処理できる簡便な配置処理方針を考える必要があるように思われる.

The following is a proposal for a simple processing system. The target audience is implementers and specification writers. Note that the terminology is based on that defined in JLReq [[JLREQ]]. It is expected that a full system may be more complex that what is described here, both due to the interaction with other features or other writing systems, and because those designing such system may wish to provide alternative options.

以下は,こうした簡便な配置処理方法の一案である.なお,用語は JLReq(⽇本語組版処理の要件,Requirements for Japanese Text Layout)による. [[JLREQ]]

Matters considered by the simple placement rules 簡便な配置ルールで考慮した事項

Matters considered by the placement rules 配置ルールで考慮した事項

Here are the fundamental assumptions underlying the simple placement rules.

簡便な配置ルールを考えるにあたっては,次のような事項を考慮し,また前提とした.

  1. Ruby is used to display the reading or the meaning of the base characters. Therefore, the number one priority here is to avoid misreadings.

    ルビは,親文字の読み方又は意味を示すものである.そこで,誤読されないことを第一とした.

  2. The method detailed in this document that attempts to reduce exceptions as much as possible. Therefore, there is no requirement for complex processing.

    できるだけ例外のでない配置処理を考えた.したがって,配置処理でも複雑な処理は要求していない.

  3. The method is agnostic to horizontal vs vertical writing, and will use the same logic in either case.

    縦組と横組とで配置処理法を変えることなく,共通の処理ができる方法とした.

  4. The method places the ruby string relative to the base character string the same way when they occur in the middle, start, or end of the line. Moreover, this method does not change the relative position of the ruby string to the base character string depending on preceding or subsequent characters. In other words, this method calculates a position for the ruby relative to the base string that does not change depending on context.

    親文字とルビの配置位置は,行中にある場合でも,行頭又は行末にある場合でも同じ配置位置とした.また,親文字の前後に配置する文字クラスにより親文字とルビの配置位置を変えることはしない方法とした.つまり,ルビの配置位置は,ルビの種類と親文字とルビの字数などにより配置位置を決めれば,その配置位置は,その他の条件で変化させない方法とした.

  5. Generally speaking, the processing method is based on JIS X 4051 [[JIS4051]] (Formatting rules for Japanese documents). However, in some cases, optional steps are used.

    処理法は,原則として JIS X 4051(日本語文書の組版方法)で規定している方法によった.[[JIS4051]] ただし,処理系定義として採用できる処理方法(オプション)を採用した場合がある.

  6. The ruby font size is set to half of the base character’s size as a default. However, the method supports using different sizes than 1/2.

    ルビの文字サイズは,親文字の文字サイズの 1/2 を初期値(デフォルト値)として採用した.ただし,ルビの文字サイズが親文字の文字サイズの 1/2 以外であっても採用できる配置方法とした.

  7. While there are cases of ruby on both sides of the base string exist, the method defined here only handles ruby on one side. Handling both sides is left as a future exercise.

    ルビを親文字の両側に配置する例もあるが,ここでは,片側に配置する場合に限定した.両側に配置する処理は,今後の課題とした.

Types of ruby ルビの種類

Ruby in Japanese may be divided into the following 3 different types, based on the relationship between the ruby and the base characters (see JLReq “3.3.1 Usage of Ruby” [[JLREQ]]).

ルビの種類は,親文字とルビとの対応関係から,次の3つとする(JLReq,“3.3.1 ルビの使⽤”参照 [[JLREQ]]).

  1. Mono-ruby

    モノルビ

  2. Jukugo-ruby

    熟語ルビ

  3. Group-ruby

    グループルビ

Types of ruby ルビの種類

Which one to use depends on the relationship between the ruby and the base characters. Mono-ruby is used to connect ruby to a single base character, Jukugo-ruby is used when multiple base characters each have a corresponding ruby and at the same time the whole group needs to be processed together, and group-ruby is used when ruby is attached to a group of base characters together (see ). Each is used when specified.

どのルビとするかは,親文字とルビとの対応関係による.モノルビは 1 文字の親文字とルビ文字が対応し,熟語ルビは,複数の親文字のそれぞれの 1 文字とルビ文字が対応し,かつ複数の親文字とルビとを一体として扱い,グループルビでは,複数の親文字の全体に対しルビが対応する([[[#ruby-types]]]).いずれのルビかは指定による.

Rules for Simple Placement of Japanese Ruby ルビの簡便な配置ルール

Ruby character size and character placement ルビの文字サイズと配置位置

The size of the ruby characters and their placement in the inline direction relative to the base characters is as follows:

ルビの文字サイズと親文字に対する行送り方向の配置位置は,次による.

  1. The size of the ruby is by default set to half of the size of the base characters.

    ルビの文字サイズは,親文字の文字サイズの 1/2 を初期値(デフォルト値)とする.

  2. In vertical text, ruby is placed to the right of the base characters, and the character frame of the ruby is placed flush against the character frame of the base characters.

    縦組のルビは,親文字の右側とし,親文字の文字の外枠とルビ文字の外枠を接して配置する.

    Example of vertical ruby 縦組のルビの例
  3. In horizontal text, ruby is placed to the top of the base characters, and the character frame of the ruby is placed flush against the character frame of the base characters.

    横組のルビは,親文字の上側とし,親文字の文字の外枠とルビ文字の外枠を接して配置する.

    Example of horizontal ruby 横組のルビの例

The following sections describe in detail the placement of mono-ruby, jukugo-ruby, and group-ruby. However, since jukugo-ruby is more complex, it is explained last.

以下では,モノルビ,熟語ルビ,グループルビの配置処理を解説するが,熟語ルビは,処理がやや複雑なので,モノルビ,グループルビ,熟語ルビの順序で解説する.

Placement of mono-ruby モノルビの配置処理

Mono-ruby is placed as follows:

モノルビの配置処理は,次による.

  1. When the ruby is made of two or more characters, each character in the ruby string is placed immediately next to its neighboring character, without any inter-letter spacing. Furthermore, when the ruby is composed of characters such as Grouped numerals (cl-24), Unit symbols (cl-25), Western word space (cl-26), or Western characters (cl-27) [[JLREQ]] which have their own individual width, they are placed based on each character’s metrics.

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

    Example mono-ruby with western characters 欧字のモノルビの例
  2. The center of the ruby string and of the base character string are aligned in the inline direction. (see ).

    ルビ文字の文字列と親文字の字詰め方向の中心をそろえて配置する([[[#mono-ex-1]]]).

  3. Since the base character and its associated ruby form a single unit there is no line wrapping opportunity inside a mono-ruby.

    モノルビの場合,親⽂字とそれに付くルビ⽂字の⽂字列は,⼀体として扱い,2 ⾏に分割してはならない.

  4. When the ruby string is longer than the base character string, the part of the ruby string that extends beyond the base characters must not hang over the characters preceding or following, if they are ideographic characters (cl-19), Hiragana (cl-15), Katakana (cl-16), etc [[JLREQ]]. Space is introduced accordingly between these preceding or following characters and the base characters.

    親文字よりルビ文字の文字列の全長が長い場合,親文字からはみ出したルビ文字を親文字の前⼜は後ろに配置する漢字等(cl-19)平仮名(cl-15)⽚仮名(cl-16)などに掛けてはならない([[[#mono-ex-1]]]).

    Example 1 of mono-ruby protruding はみ出しのあるモノルビの例1

    However, in the following cases, the ruby characters do hang over the preceding or following characters (see ).

    ただし,次の場合に限り,ルビを掛ける([[[#mono-ex-2]]]).

    Example 2 of mono-ruby protruding はみ出しのあるモノルビの例2
  5. When the ruby string is longer than the base character string, and the ruby falls at the start of the line, then the start of the ruby string is aligned with the line’s start edge (see ), while if the ruby falls at the end of the line, then the end of the ruby string is aligned with the line’s end edge (see ).

    親文字よりルビ文字の文字列の全長が長い場合,行頭ではルビ文字の文字列の先頭を行頭にそろえ([[[#line-start-mono]]]),行末ではルビ文字の文字列の末尾を行末にそろえる([[[#line-end-mono]]]).

    Example of mono-ruby at the line start 行頭のモノルビの例
    Example of mono-ruby at the line end 行末のモノルビの例

Placement of group-ruby グループルビの配置処理

Group-ruby is placed as follows:

グループルビの配置処理は,次による.

  1. When the ruby string and the base character string are composed of characters such as Hiragana (cl-15), Katakana (cl-16), Ideographic characters (cl-19), and so on, excluding characters like Grouped numerals (cl-24), Unit symbols (cl-25), Western word space (cl-26), or Western characters (cl-27) [[JLREQ]] which have their own individual width, the way they are positioned depends on how their respective lengths would compare if they were each laid out without any inter-letter spacing:

    ルビ文字及び親文字が連数字中の⽂字(cl-24)単位記号中の⽂字(cl-25)欧文用間隔(cl-26)欧⽂⽤⽂字(cl-27)のように固有の字幅を持った文字以外の平仮名(cl-15)⽚仮名(cl-16)漢字等(cl-19)などの場合は,それぞれをベタ組にした場合のルビ文字の文字列の全長と,親文字の文字列の全長を比較し,次のように配置する.

    • When their respective lengths would be the same, both are laid out without inter-letter spacing and placed such that their respective centers in the inline direction are aligned (see ).

      ルビ文字の文字列の全長と親文字の文字列の全長が同じ場合は,それぞれをベタ組とし,ルビ文字の文字列及び親文字の文字列の字詰め方向の中心をそろえて配置する([[[#group-ruby]]]).

      Example 1 of group-ruby グループルビの例1
    • When the ruby string is shorter than the base character string, space is inserted between every character in the ruby string as well as at the start and the end of the ruby string so that it becomes the same length as the base character string, then their centers in the inline direction are aligned. The size of the space inserted between each of the ruby characters is twice the size of the space inserted at the end and at the start (see ).

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

      Example 2 of group-ruby グループルビの例2

      However, the size space inserted at the start and end must be capped at no more than half the size of one base character, and the space inserted between each ruby character is enlarged to compensate (see ).

      ただし,ルビ文字の文字列の先頭及びルビ文字の文字列の末尾の最大の空き量は,親文字の文字サイズの 1/2 とし,ルビ文字の文字列の字間の空き量を均等に増やす([[[#group-3]]]).

      Example 3 of group-ruby グループルビの例3
    • When the ruby string is longer than the base character string, space is inserted between every character in the base character string as well as at the start and the end of the base character string so that it becomes the same length as the ruby string, then their centers in the inline direction are aligned. The size of the space inserted between each of the base characters is twice the size of the space inserted at the end and at the start (see ).

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

      Example 4 of group-ruby グループルビの例4
  2. When the base character string is composed of characters like Grouped numerals (cl-24), Unit symbols (cl-25), Western word space (cl-26), or Western characters (cl-27) which have their own individual width, and the ruby string is composed of characters such as Hiragana (cl-15), Katakana (cl-16), Ideographic characters (cl-19) [[JLREQ]], and so on, the placement depends on the following (see ):

    親文字が連数字中の⽂字(cl-24)単位記号中の⽂字(cl-25)欧文用間隔(cl-26)欧⽂⽤⽂字(cl-27)のように固有の字幅を持った文字で,かつ,ルビ文字が平仮名(cl-15)⽚仮名(cl-16)漢字等(cl-19)などの場合は,次による([[[#ruby-west]]]).

    • When their respective lengths would be the same, both are laid out without inter-letter spacing and placed such that their respective centers in the inline direction are aligned.

      ルビ文字の文字列の全長と親文字の文字列の全長が同じ場合は,それぞれをベタ組とし,ルビ文字の文字列及び親文字の文字列の字詰め方向の中心をそろえて配置する.

    • When the ruby string is shorter than the base character string, space is inserted between every character in the ruby string as well as at the start and the end of the ruby string so that it becomes the same length as the base character string, then their centers in the inline direction are aligned. The size of the space inserted between each of the ruby characters is twice the size of the space inserted at the end and at the start.

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

    • When the ruby string is longer than the base character string, both are laid out without inter-letter spacing and placed such that their respective centers in the inline direction are aligned. In this case, the ruby string protrudes from the base character string.

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

    Example of ruby with western characters 欧字を含むルビの例
  3. When the ruby string is composed of characters like Grouped numerals (cl-24), Unit symbols (cl-25), Western word space (cl-26), or Western characters (cl-27) which have their own individual width, and the base character string is composed of characters such as Hiragana (cl-15), Katakana (cl-16), Ideographic characters (cl-19) [[JLREQ]], and so on, the placement depends on the following (see ):

    ルビ文字が連数字中の⽂字(cl-24)単位記号中の⽂字(cl-25),欧文用間隔(cl-26)欧⽂⽤⽂字(cl-27)のように固有の字幅を持った文字で,かつ,親文字が平仮名(cl-15)⽚仮名(cl-16)漢字等(cl-19)などの場合は,次による([[[#ruby-west]]]).

    • When their respective lengths would be the same, both are laid out without inter-letter spacing and placed such that their respective centers in the inline direction are aligned.

      ルビ文字の文字列の全長と親文字の文字列の全長が同じ場合は,それぞれをベタ組とし,ルビ文字の文字列及び親文字の文字列の字詰め方向の中心をそろえて配置する.

    • When the ruby string is shorter than the base character string, both are laid out without inter-letter spacing and placed such that their respective centers in the inline direction are aligned.

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

    • When the ruby string is longer than the base character string, space is inserted between every character in the base character string as well as at the start and the end of the base character string so that it becomes the same length as the ruby string, then their centers in the inline direction are aligned. The size of the space inserted between each of the base characters is twice the size of the space inserted at the end and at the start.

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

  4. When the ruby string is longer than the base character string and protrudes, whether and how it hangs over characters preceding or following the base character string is handled in the same way as with mono-ruby (see ). Also, when the ruby string is longer than the base character string, protrudes, and is located at the start or end of the line, the resulting layout is also identical to that of mono-ruby.

    親文字の文字列よりルビ文字の文字列の全長が長い場合,親文字からはみ出したルビ文字を前⼜は後ろに配置する文字に掛けてよいかどうかはモノルビの処理で説明した方法による([[[#protruding-group]]]).また,親文字の文字列よりルビ文字の文字列の全長が長い場合の行頭又は行末での配置処理も,モノルビの処理で説明した方法による.

    Example of protruding group-ruby はみ出しのあるグループルビの例
  5. In the case of group ruby, the base character string and its associated ruby string are treated as a unit, so there is no line wrapping opportunity inside either string.

    グループルビの場合,親⽂字の文字列とそれに付くルビ⽂字の⽂字列は,⼀体として扱い,2⾏に分割してはならない.

Placement of Jukugo-ruby 熟語ルビの配置処理

Jukugo-ruby is placed as follows:

熟語ルビの配置処理は,次による.

  1. With jukugo-ruby, each base character is associated with its own ruby string. When the length of each of these ruby string laid out without inter-letter spacing is shorter than the length of all their corresponding base characters, placement is determined as follows:

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

    • When the ruby string associated with an individual base character is 1 character long, the ruby character and the base character are placed such that their respective centers in the inline direction are aligned (see ).

      各親文字に対応したルビ文字が 1 字の場合は,親文字とルビ文字の字詰め方向の中心をそろえて配置する([[[#jukugo-1]]]).

      Example 1 of jukugo-ruby 熟語ルビの例1
    • When the ruby string associated with an individual base character is 2 characters long or more, the ruby string is laid out without inter-letter spacing, and placed such that its center and the center of its base character are aligned in the inline direction (see ).

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

  2. For simple ruby implementations, the resulting layout would look identical to group-ruby when laid out without inter-letter spacing, the processing is identical to group-ruby (see and ).

    各親文字に対応したそれぞれのルビ文字の文字列をベタ組にした場合において,各親文字に対応したそれぞれのルビ文字の文字列の全長が1つでも親文字の文字サイズを越えるときは,グループルビと同じ配置処理とする([[[#jukugo-2]]],[[[#jukugo-3]]]参照).

    Example 2 of jukugo-ruby 熟語ルビの例2
    Example 3 of jukugo-ruby 熟語ルビの例3
  3. With jukugo-ruby, individual base characters and their associated ruby string are treated as a unit, and line wrap opportunities are allowed between two base characters. When such a line wrap occurs, if a single base character that is part of the jukugo is placed alone at the end or at the start of a line, it is laid out identically to mono-ruby; conversely when several base characters that are part of the jukugo are placed together at the end or start of a line, they are laid out together as has been described in this section about jukugo-ruby (see ).

    熟語ルビは,各親文字間で,各親文字とルビ文字の組合せを維持したうえで,2 行にわたる文字間での分割ができるものとする.この場合,行末又は行頭で親文字が 1 字なったときは,モノルビと同じ配置処理とし,親文字が 2 字以上となったときは,ここで説明した熟語ルビの配置処理とする([[[#wrap-jukugo]]]).

    Example of wrapping jukugo-ruby 熟語ルビの分割例
  4. When the ruby string is longer than the base character string and protrudes, whether and how it hangs over characters preceding or following the base character string is handled in the same way as with mono-ruby. Also, when the ruby string is longer than the base character string, protrudes, and is located at the start or end of the line, the resulting layout is also identical to that of mono-ruby.

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