二〇一四年 長月 十日 水曜日
■
LaTeX 覚え書き・その4
[/links]
この記事は書かれてから1年以上経過しています。内容が古くなっている可能性があります。コメントの受付は終了しました。
その3から続く。
LaTeX でページ周囲の余白を特定の長さに設定したいとき、geometry パッケージを使えば簡単だが、このパッケージを使わなくても、LaTeX のページがどのようにレイアウトされているかが分かれば、それほど難しくない。(ページのレイアウトを知るには、layout パッケージを使うとよい。)
以下、article または jsarticle クラスを使った横書き片面印刷を前提とする。
まず、原点が紙の左端と上端から 1 インチずつ内側にあるので、原点が紙の左上隅になるようにオフセットする。
\setlength{\hoffset}{-1in}
\setlength{\voffset}{-1in}
次に、左余白と上余白を設定する。
\setlength{\oddsidemargin}{左余白の長さ}
\setlength{\topmargin}{上余白の長さ}
右余白と下余白は直接指定できないが、本文領域の幅と高さを指定すると、残りが余白になる。
\setlength{\textwidth}{本文領域の幅(紙の幅 - 左余白 - 右余白)}
\setlength{\textheight}{本文領域の高さ(紙の高さ - 上余白 - 下余白)}
左右はこれでよいが、上下にはヘッダー領域とフッター領域があるので、それを補正する必要がある。なお、ヘッダーとフッターを出力するかどうかは、\pagestyle の設定で決まる。デフォルトは plain で、フッター(ページ番号)のみを出力する。empty にすると、ヘッダーもフッターも出力しない。headings および myheadings ではヘッダーのみ出力する。
ヘッダーを出力しない場合、ヘッダーの高さを上余白から引く。
\addtolength{\topmargin}{-\headheight}
\addtolength{\topmargin}{-\headsep}
ヘッダーを出力する場合は、ヘッダーの高さを本文領域の高さから引く。
\addtolength{\textheight}{-\headheight}
\addtolength{\textheight}{-\headsep}
フッターを出力する場合、フッターの高さを本文領域の高さから引く。
\addtolength{\textheight}{-\footskip}
フッターを出力しない場合、何もしなくてよい。
例えば、A4(210 mm x 297 mm)で、左右の余白 25 mm、上下の余白 30 mm、\pagestyle デフォルトなら、以下のようになる。
\setlength{\hoffset}{-1in}
\setlength{\voffset}{-1in}
\setlength{\oddsidemargin}{25mm}
\setlength{\topmargin}{30mm}
\setlength{\textwidth}{160mm} % 210mm - 25mm - 25mm
\setlength{\textheight}{237mm} % 297mm - 30mm - 30mm
\addtolength{\topmargin}{-\headheight}
\addtolength{\topmargin}{-\headsep}
\addtolength{\textheight}{-\footskip}
なお、jsarticle クラスを使って、フォントサイズを 10pt 以外に指定すると、余白も含めたページ全体が拡大縮小されるので、長さの単位を in や mm ではなく truein や truemm にする必要がある。
[このカテゴリをまとめて読む。]
[最新の記事を読む。]
|