天地有情

Koma-Script 入門 ~初歩の初歩~

§1.KOMA-Script とは何?

Frank Newkam & Markus Kohm 両氏によって 開発されている LaTeX2e 互換のクラスファイルです.
現在時点(2013/11)でのversion は 3.12 となっています.
KOMA-Script の大きな特徴は、それに含まれる 「typearea パッケージ」を用いて,現代のヨーロッパ風の
ページ・レイアウトの構築にあります.

§2.特徴

いろいろな特徴がありますが,要点を以下に列挙します.

■■ LaTeX2e のクラスファイルに対応する KOMA-Script 用のクラスファイルが用意されています.

koma01.png


■■ 用紙サイズ:
   A4 を標準とします.勿論,その他の A系列,B系列も利用できます.

■■ フォントサイズ:
   10pt,11pt,12pt が標準で利用できます.LaTeX2e では 10ptが標準ですが,
   KOMA-Script では 11pt が標準となります.

■■ ページ・レイアウト:
   基本的なコンセプトは次の通りです.

koma02.png


■■ A4サイズにおけるType-Area と Margin の関係(デフォルト)

koma03.png


■■ A4サイズにおける font size と DIV の関係(デフォルト)

koma04.png



■■ DIV, BCOR とは?

A4サイズ,font size=11pt,DIV=10,BCOR=0mm のページ・レイアウトの場合について
手動で計算してみます.

DIV は用紙全体を何分割するかのパラメータです.A4サイズ,font size=11pt の場合は
上記の表から DIV=10,即ち幅・高さを10分割します.

分割された一片の長方形の幅は HLU (Horizontal Length Unit),高さは VLU (Vertical Length Unit)
で表されます.この場合は

A4サイズ= 210mm × 297mm

HLU=210/10 = 21.0mm
VLU=297/10 = 29.7mm

Type-Area:
幅  Width=HLU×(DIV-3)=21.0×(10-3) = 147.0mm
高さ Height=VLU×(DIV-3)=29.7×(10-3) = 207.9mm

top(天)マージン  VLU = 29.7mm
bottom(地)マージン VLU×2 = 59.4mm

inner HLU = 21.0mm
(ノド)21.0mm×1.5 = 31.5mm

outer HLU = 21.0mm
(小口)21.0mm×1.5 = 31.5mm


※注意:フォントの種類,行間隔,一行の文字数,..などを要因として自動計算されるので上記の数値は
    最適に調整されます.

BCOR(binding correction)は,DIV=n(整数)でページレイアウトのパラメータが拘束(Bind)されてしまう.
このため,幾分かの修正(Correction)を試みることができる仕組みです.

その修正は,inner(小口)を調整し,幅パラメータ全体が自動調整されます.

上記のA4サイズの例に対して BCOR=8mm を設定した場合,
幅:高さ = (210-8):297 = 202:297 で考えます.(幅方向のみを考えればよい)

HLU=202/10 = 20.2mm

Type-Area:
幅  Width=HLU×(DIV-3)=20.2×(10-3) = 141.4mm

outer HLU = 20.2mm
(小口)20.2mm×1.5 = 30.3mm

inner HLU = 20.2mm
(ノド)20.2mm×1.5 + 8mm = 38.3mm

※注意:実際では,DVI=n(整数),BCOR=m(実数)[オプション]を指定するだけで自動計算
    され,最適値が設定されます.

■■ 一般的な版面(BCOR=0mm)のイメージ図 (片面印刷用)を示します.

koma05.png


§3.ソースファイルの記述例

(1)ファイル名:example.tex
   文字コード:UTF-8

■■■■■■■■■■■■■■■■■■■■■■
01: \documentclass[%
02: paper=A5,
03: fontsize=10pt,
04: DIV=9,
05: BCOR=0mm,
06: pagesize=auto,
07: ]{scrartcl}

08: \usepackage{}
09: \linespread{1.25}
10: \begin{document}
11: \section{吾輩は猫である}
12: 吾輩は猫である.名前はまだ無い.

13: どこで生れたかとんと見当がつかぬ.
14: 何でも薄暗いじめじめした所でニャーニャー泣いていた事だけは記憶している.
15: 吾輩はここで始めて人間というものを見た.
16: しかもあとで聞くとそれは書生という人間中で一番獰悪な種族であったそうだ.
17: この書生というのは時々我々を捕えて煮て食うという話である.
18: しかしその当時は何という考もなかったから別段恐しいとも思わなかった.
19: ただ彼の掌に載せられてスーと持ち上げられた時何だかフワフワした感じがあった
20: ばかりである.

21: \vfill

22: 掌の上で少し落ちついて書生の顔を見たのがいわゆる人間というものの見始であろう.
23: この時妙なものだと思った感じが今でも残っている.
24: 第一毛をもって装飾されべきはずの顔がつるつるしてまるで薬缶だ.
25: その後猫にもだいぶ逢ったがこんな片輪には一度も出会わした事がない.
26: のみならず顔の真中があまりに突起している.
27: そうしてその穴の中から時々ぷうぷうと煙を吹く.
28: どうも咽せぽくて実に弱った.
29: これが人間の飲む煙草というものである事はようやくこの頃知った.
30: \end{document}
■■■■■■■■■■■■■■■■■■■■■■

(2)説明:
   01~07: ドキュメントクラスは scrartcl(article相当).
   02~06: クラスオプションを指定.詳細は下記.
   02: 用紙は A5サイズ.
   03: フォントサイズは 10pt.
   04: DIV=9 で版面設計.なお DIV=calc として自動計算も可能.
   05: BCOR=0mm (innerの調整は行わない).
   06: dvi や pdf をA5サイズでオープンする.
   09: \linespread{1.25}は行間隔を15ptにするための補正コマンド.(\baselinestretchと同機能).
   10~30: 本文.

(3)コンパイル:
   その1: platex -kanji=utf8 example.tex
        dvipdfmx example.dvi

   その2: ptex2pdf -l example.tex (直接,PDFが得られる)

(4)結果:
   上下左右の余白に注目しましょう.

koma06.png



§4.版面設計のための,その他のコマンド.

(1)\areaset[BCOR]{width}{height} を利用することができます.
   width および height の箇所に数値を入れて版面の調整を行います.

(2)geometry.sty を使う.
   DVI のみでは自由度が足りない場合,geometry.sty を使って,
   より自由度が高い調整を行うことができます.

(3)anysize.sty や fullpage.sty といったものもあります.試してみてはいかがでしょうか.

§5.オプション指定などのサンプルコード

(1)
\documentclass[10pt,chapterprefix=true]{scrbook}
\areaset{345pt}{550pt}

(2)
\documentclass[paper=A4,pagesize=auto,12pt,
footinclude=true,BCOR=0mm]{scrartcl}

(3)
\documentclass [
paper =128 mm :96 mm , % like beamer
fontsize =11 pt , % like beamer
pagesize , % write page size to dvi or pdf
parskip = half - , % paragraphs are separated by half a line
numbers = noendperiod , % no periods after section numbers
captions = nooneline % same treatment of one / several lines
]{ scrartcl }

(4)
\documentclass[a4paper,twoside]{report}
\usepackage[DIV15,BCOR12mm]{typearea}

(5)
\documentclass[a4paper,twoside]{report}
\usepackage[DIVcalc,BCOR12mm]{typearea}

(6)
\documentclass[10pt,twoside,BCOR12mm,DIVcalc]{scrreprt}

§6.LaTeX2eの従来からの標準クラスは使わない?

ここでいう標準クラスとは,article.cls, report.cls, book.cls (jarticle, jreport, jbook も)です.
これらの難点はページ・レイアウトにおいて,「余白」にあるようです.
スタイルを変えたい理由の大半は「余白が広すぎるように感じる」ことだったりします.

サンプルなどでは定型文のように \documentclass{article} が使われていますが,
これらのクラスファイルはアメリカ的なレターサイズ文書を前提に作られており,余白がそのままだと
A4 では広めに感じることが多いようです.

余白を狭くしたい場合,とりあえず A4 前提の欧州文化に則して作られた KOMA-Script に含まれる
下記のクラスファイルの利用を検討しましょう.

● scrartcl.cls
● scrreprt.cls
● scrbook.cls
● scrlttr2.cls

和文の場合は jsarticle.cls,jsbook.cls を検討しましょう.ただし,このクラスファイルは
magnification が施されていますので typearea.sty の適用はできません.geometry.sty を利用
した方が便利です.

LaTeX2eの従来からの標準クラスを使う場合には,KOMA-Script 由来の typearea.sty を使うと,
本文の幅を安全・簡単に調整できます.

\usepackage{typearea}
\typearea[<BCOR>]{<DVI>}


たとえば,\typearea{DIV=12}
のように使用し,12 のところを変えて本文の幅を調整することができます.

あるいは \areaset[<BCOR>]{<Width>}{<Height>} の利用も可能です.

このパッケージや上記のクラスファイルに関する詳細は KOMA-Script のドキュメントを参照してください.


§7.参考文献

(1)koma-script.pdf (http://www.komascript.de/files/scrguien.pdf)

(2)robbers.pdf(http://www.tug.org/pracjourn/2006-3/robbers/robbers.pdf)

(3)scrguien.pdf(http://kebo.vlsm.org/CTAN/macros/latex/contrib/koma-script/scrguien.pdf)




スポンサーサイト
  1. 2013/11/13(水) 13:02:42|
  2. Koma-Script
  3. | トラックバック:0
  4. | コメント:0
<<[LaTeX] eledmac --- 学術的に重要なエディションの組版 | ホーム | [LaTeX] environ --- LaTeX環境用の新しいインターフェース>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://konoyonohana.blog.fc2.com/tb.php/56-7b4ac09e
この記事にトラックバックする(FC2ブログユーザー)