3.4.1. simple-page-sequenceの特質

 simple-page-sequence フロー・オブジェクト・クラスの特質には、ページサイズに関するものと、ヘッダ・フッタの各領域に関するものとがあります。このうち、サイズに関連する特質について、ページ上のどの部位に当たるかを図3.3に示します。

図3.3 simple-page-sequence のページレイアウト

 図にあるように、まず特質 page-width: および page-height: でページサイズを決定します。これらの特質に指定するサイズは、実際に出力する用紙のサイズです。特質の引数は length-spec(長さ指定)で、たとえばページサイズをA4用紙とする場合は次のように指定します。

例 3.2
(element article
  (make simple-page-sequence
    page-width: 210mm
    page-height: 297mm))

 
 次にページ内の余白を設定します。余白を指定する特質は、上端が top-margin:、下端が bottom-margin:、左右が left-margin: および right-margin: になります。これらの特質の初期値は 0pt(余白なし)となっており、未指定の場合はページ全体が本文領域になりますが、ほとんどの場合は適切な指定が必要となるでしょう。指定値はページサイズの指定と同様 length-spec になります。
 注意する必要があるのは、ヘッダまたはフッタ領域を使用する場合です。ヘッダ・フッタにはサイズの指定がなく、余白指定のみで位置を決定します。加えて、“余白”と呼んでいる位置が本文領域のそれとは全く異なります。本文領域の余白は、たとえばtop-margin:であればページ上端から本文領域上端までの距離を指しています。これに対して、ヘッダの余白はページ上端からヘッダ行の配置パスまでの距離を、フッタの余白にはページ下端からフッタ行の配置パスplacement path)までの距離を指しています。
 配置パスとは、図3.4にあるように行の内部に文字などを配置する際に基準となる、行に対して水平な線のことをいいます。一般的に、欧文書体の文字を行内に配置する場合は、文字のベースラインが配置パスに重なるように配置されます[3]


図3.4 ヘッダ・フッタの余白と配置パス

[3] 本書では説明しませんが、必要に応じてベースラインの微調整を行うことも可能です。

length-spec

length-spec はスタイル言語特有のデータ型で、述語 length-spec?#t を返すオブジェクトです。端的にいうと単位付き数値のことを意味しますが、これに加えて length-spec を含む算術演算も length-spec を返します。すなわち、次の式はいずれも length-spec を返します。

(+ 10pt 5)           ; 加算
(- 210mm 30mm 30mm)  ; 減算
(* 2 14pt)           ; 乗算
(/ 21pt 3)           ; 除算

<<prev      next>>