(a) 表記方向
縦組みか横組みかを決めるのに、特質writing−mode:を使います。
- writing−mode:
- デフォルトleft−to−right (横書き 左から右:欧文、日本語の横組み)
- right−to−left (横書き 右から左:アラビア語ヘブライ語)
- top−to−bottom (縦書き 上から下:日本語の縦組み)
(b) 行揃え
段落ごとの行の揃え方は特質quadding:で指定します。
- quadding:
- デフォルトstart表記方向で最初に揃える
- center中央揃え
- end表記方向で最後に揃える
- justify両端揃え
quadding:には、上の4つの他に見開きや段を意識した揃え方を指定する値があります。
以下の2つはページ列の中に含まれる段落にのみ指定できます。
- spread−inside見開き内側(綴じ込み側)
- spread−outside見開き外側
以下の2つは段集合列の中に含まれる段落にのみ指定できます。
- page−inside1ページの内側
- page−outside1ページの外側
行分割法
テキストは、行に分割されて段落という形でまとめられます。どこで分割するかは特質lines:で指定します。
- lines:
- デフォルトwrap 領域の大きさに合わせて分割
- asis RE(record−end)文字の後でのみ分割
- asis−wrap RE文字の後で、および領域内におさまるように分割
- asis−truncate RE文字の後でのみ分割。領域からはみ出した行は切り捨てる
- none 分割が存在しないとする
(d) 禁則
行分割のルールには、特定の文字の前や後での行分割を禁じたものがあります。この禁則に従うには、禁則対象とする文字に以下の特質を指定します。
- break−before−priority:オブジェクトの前での分割優先度
- break−after−priority:オブジェクトの後での分割優先度
<1>行頭禁則
行頭禁則対象は、その前での分割を禁止したものです。文字の前での分割優先度を低く設定すれば実現できます。
- break−before−priority:
- デフォルト0普通の文字(オブジェクト)の前の分割優先度
- −1以下行頭禁則文字(オブジェクト)の前の分割優先度
たとえば、終わりかっこ“)”と音引き“ー”を行頭禁則対象と指定します。行頭禁則和字“ー”は、場合によっては禁則を解除しても良いとされるので、“)”にくらべて、オブジェクトの前の分割優先度を高くします。
- )break−before−priority: −2
- ーbreak−before−priority: −1
<2>行末禁則
行末禁則対象には、その文字の後の分割優先度を低く指定します。考え方は行頭禁則対象の場合と同じです。
- break−after−priority:の値
- デフォルト0(普通の文字(オブジェクト)の後の分割優先度)
- −1以下(行末禁則文字(オブジェクト)の後の分割優先度)
<3>分離禁止
分離禁止対象は、前後の文字と離してはならないものなので、break−before−priority:とbreak−after−priority:に−1以下を指定します。
<4>ぶら下げ組み
行頭の位置に行頭禁則対象である句読点が来た場合は、前の行末にぶら下げる組み方です。ぶら下げ組みをするには、以下の特質を使います。
- hanging−punct?:
- デフォルト#f(ぶら下げ組みを許可しない)
- #t(許可する)
- punct?:
- デフォルト#f(ぶら下げ対象文字ではない)
- #t(ぶら下げ対象文字である)
たとえば“、”と“。”をぶら下げ組みにする場合、次のように指定します。
- hanging−punct?:#t(ぶら下げ組みをするparagraphの特質)
- punct?:#t(characterオブジェクト“、”と“。”の特質)
(e) ハイフネーション
ハイフネーションに関する指定を行う特質には以下のものがあります。
<1>ハイフネーションを行うかどうか
- hyphenate?:
- デフォルト#f(ハイフネーションを許可しない)
<2>ハイフンとして使う文字
- hyphenation−char:
- デフォルト#¥-
<3>分割点の制限
- hyphenation−remain−char−count:前の行に残す文字の最小数
- hyphenation−push−char−count:次の行に送る文字の最小数
- デフォルト2
分割の際に、前の行と後の行にそれぞれ少なくとも何字残すかを指定し、語の分割点を制限します。
オックスフォードルールには、最小限2文字をその行に残し、最小限3文字を次の行に送るというルールがあります。これは以下の指定で実現できます。
- hyphenation−remain−char−count:2
- hyphenation−push−char−count:3
<4>分割点の指定
- hyphenation−exceptions:分割可能点にハイフン文字を含んだ語のリスト
- デフォルトlist()(空リスト)
この特質は、語の分割点を定めた辞書として使います。内容は、分割点にハイフンを含んだ文字列(単語)のリストです。
<5>ハイフネーションの連続の制限
- hyphenation−ladder−count:ハイフネーション行が連続する最大数
- デフォルト#f(制限しない)
ハイフネーションの連続を制限します。欧文組版の3行以上続けてハイフネーションしてはならないというルールは以下の指定で実現できます。
- hyphenation−ladder−count:2
<6>分割された語の配置
- hyphenation−keep:分割された語を配置する範囲を指定
- デフォルト#f (範囲を制限しない)
- spread (同じ見開き内におさめる)
- page (同じページ内におさめる)
- column (同じ段内におさめる)
右ページの最終行でハイフネーションを行ってはならないというルールを実現するためには、以下の指定で分割された語を同じ見開き内におさめます。
- hyphenation−keep:’spread
(f) フォント
フォントに関する特質には以下のものがあります。
<1>フォントファミリー名
- font−family−name:
- デフォルトiso−serif (“Times Roman”)
- iso−sanserif (“Helvetica”)
- iso−monospace (“Courier”)
- #f (任意のフォントファミリーを許容)
<2>フォントの重み
- font-weight:
- not−applicable(利用不可)
- ultra−light/extra−light/light/semi−light(細い)
- デフォルトmedium(中くらいの太さ)
- semi−bold/bold/extra−bold/ultra−bold(太い)
<3>フォントの傾き
- font-posture:
- デフォルトupright (傾斜なし)
- oblique
- back−slanted−oblique (左方向に傾斜したoblique)
- italic
- back−slanted−italic (左方向に傾斜したitalic)
<4>フォントの構造
- font-structure:
- デフォルトsolid(普通の文字)
- outline(袋文字)
<5>フォントの字幅
- font−proportionate−width:
- not−applicable(利用不可)
- ultra−condensed/extra−condensed/condensed
/semi−condensed(狭い) - デフォルトmedium(中くらい)
- semi−expanded/expanded/extra−expanded
/ultra−expanded(広い)
<6>フォント名
- font-name:
- デフォルト#f(任意のフォント名を許容)
font−name:を指定した場合、font−family−name:からfont−proportionate−width:までの5つの特質は指定する必要がありません。
<7>フォントサイズ
- font-size:
- デフォルト
10pt
行内領域の配置
段落内に行内領域を配置する際には、以下の特質を使います。
<1>行間
- line−spacing:行送り量
- デフォルト12pt
- min−leading:行間の最小スペース
- デフォルト自動調整
- line−spacing−priority:行間調整に使うスペースの優先度
- デフォルト0
この3つは配置パスの位置決めに使います。つまり、行間を決定します。
<2>行領域の大きさ
- min−pre−line−spacing:配置パスの上(右)にある行領域サイズの最小値
- min−post−line−spacing:配置パスの下(左)にある行領域サイズの最小値
- デフォルトフォント依存(フォントの大きさによる)
行領域の大きさを、配置パスからの距離で指定します。
<3>字間の制限>
- justify−glyph−space−max−add:
- デフォルト0pt
- justify−glyph−space−max−remove:
- デフォルト0pt
字間に加えるスペースと字間から除くスペースの量の上限値を指定するものです。両端揃えのための調整の際に、字間が空きすぎたり詰まりすぎたりしないように制限します。
<4>シフト
- position−point−shift:
- デフォルト0pt
行内領域の位置決め点をずらすことによって、文字または文字列を横組みでは上下、縦組みでは左右に移動することができます。この特質によって和欧混植に必要なベースラインシフトが実現できます。
(h) インデント
<1>すべての行のインデント
- start−indent:段落の行頭側のインデント
- end−indent:段落の行末側のインデント
- デフォルト0pt
段落全体のインデント量を指定します。欧文組版のところで説明したFlush−and−hangスタイルに使います。
<2>第1行のインデント
- first−line−start−indent:段落の第1行の行頭インデント
- デフォルト0pt
段落の第1行の行頭インデント量を指定します。マイナス値を指定してアウトデントにすることもできます。
(i) 段落の分割
段落の分割による孤立行を防ぐためには、以下の特質を使います。
<1>widowの制限
- widow−count:段落が分割された場合、次の領域の先頭にはみ出す行の最小数
- デフォルト2
最低何行をはみ出させるかを指定し、widowを防ぎます。
<2>orphanの制限
- orphan−count:段落が分割された場合、その領域の最後に残る行の最小数
- デフォルト2
最低何行を残すかを指定し、orphanを防ぎます。
<3>分割の制限
- break−before:オブジェクトの前で分割が生じる(領域が開始する)
- break−after:オブジェクトの後で分割が生じる(領域が終了する)
- デフォルト#f (制限なし)
- page (ページ)
- page−region (ページ区域)
- column (段)
- column−set (段集合)
オブジェクトを指定した領域内におさめ、不適切な分割を防ぎます。
たとえば段落に対して次のような指定を行うと、ページ末の分割によるwidowを無くすことができます。
- widow−count: 2(段落が次ページにはみ出すとき、少なくとも2行が必要)
または
- break−after: ’page(段落の終了後に改ページが生じる)