公式サイト です。 ミラーサイトは http://khotta.digiweb.jp/ghost/advice.html です。

さあ、始めよう pLaTeX2e Blog のページ  New!

Section 7 覚えてほしいコマンド ( 学生の方へ )

レポートを pLaTeX2ε を利用して提出される学生の方が増えて きました。 頼もしいかぎりです。 しかしながら、 気になる点 もあります。 その中でも、特に注意 しておいて いただきたい コマンド を述べてみます。


(1) \pagestyle と 12 ポイント
(2) 1 バイト文字と 2 バイト文字
(3) \textheight と \newpage
(4) \vspace と \vspace* と \hspace と \hspace*
(5) \quad と \medskip
(6) ascmac.sty について
(7) Graphics パッケージの使い方
(8) 文書のメリハリについて

To Contents


(1) \pagestyle と 12 ポイント文字 :

まず、はじめは \pagestyle についてです。 一枚のレポートにでも、ページ数の 1 を出力してある ものを見かけることがよくあります。 普通は、 \pagestyle { plain } と書きますが、一枚のときには \pagestyle { empty } と記述するのが正解です。
さらに、レポート採点のときに感じるのは、 文字の大きさ についてです。 手書きのレポートの後に、普通の 10 ポイント指定での pLaTeX2ε で書かれた レポートを見ると文字の大きさが、とても小さく見えてしまうものです。 ですから、できたら文字の大きさを 12 ポイント指定で書いていただきたい のです。 12 ポイントの指定 は次のようにします :


       \documentclass[12pt]{jarticle}
       \pagestyle{plain}

▲ Section 7


(2) 1 バイト文字と 2 バイト文字 :

ここで、1 バイト文字 とは半角文字つまり 欧文および算用数字2 バイト文字 とは 和文全角文字 を意味します。
日本語の TeX 文書を書くとき に、 特に注意したいことは 欧文および算用数字 には必ず 1 バイト文字 を用いるということです。 そして、この 1 バイト文字の 前後 にも、 やはり 1 バイト文字分の空白 をあけると言うことです。 このことを実行するだけで、随分と きれいな出力が得られます。

さて、括弧 についてですが 欧文用 1 バイト文字の ( 欧 文 ) よりも、 和文用 2 バイト文字の ( 和 文 ) を利用 するようにしてください。 そのほうが、TeX 文書への 収まり具合が良いと考えるからです。
さらに 空白 についてですが、 1 バイト文字 の空白文字の場合には何個空白を取っても 1 個分の空白しかできない のに反して、 2 バイト文字 の 空白の場合には 空白文字の個数だけ空白が出力 されてしまうことに注意しておいてください。

▲ Section 7


(3) \textheight と \newpage :

つぎに、レポートは B5 版の用紙 で提出されることが多いのですが、よく見てみると レポートの上下の余白が空きすぎていることに 気がつくはずです。 初期設定では、どうしてもこのようになってしまいます。 そこで、次のように \textheight を利用してみましょう :


       \documentclass[b5paper,12pt]{jarticle}
       \pagestyle{plain}
       \setlength{\textheight}{18cm}

こうすると、実は本文領域の縦の長さが 18cm になるだけで上部の 空白はそのままです。
では、どのようにすれば中央で、本文領域いっぱいに利用できるのか? 参考文献 にある 奥村先生の 『 [改定版] LaTeX2ε 美文書作成入門 』 の 202 から 205 ページを参考にすれば、つぎのようにすれば良いことが わかります ( 記号の意味は、同書を参照してください) :

       \documentclass[b5paper,12pt]{jarticle}
       \pagestyle{plain}

       \setlength{\textheight}{\paperheight}
       \addtolength{\textheight}{-\headheight}
       \addtolength{\textheight}{-\headsep}
       \addtolength{\textheight}{-\footskip}
       \addtolength{\textheight}{-\topskip}
       \addtolength{\textheight}{-0.3cm}
       \divide\textheight\baselineskip
       \multiply\textheight\baselineskip
       \addtolength{\textheight}{\topskip}
       \addtolength{\textheight}{0.1pt}

       \setlength\topmargin{\paperheight}
       \addtolength\topmargin{-\textheight}
       \addtolength\topmargin{-\headheight}
       \addtolength\topmargin{-\headsep}
       \addtolength\topmargin{-\footskip}
       \setlength\topmargin{\topmargin}
       \addtolength\topmargin{-1in}

しかし、 実際の問題として 数枚の B5 版の用紙の場合には、これでは大袈裟すぎます。 次のような、私自身が利用している方法を紹介しましょう。 コマンドの \textheight\vspace* を使うものです ( \vspace* については、 つぎの項で説明します ) :

       \documentclass[b5paper,12pt]{jarticle}
       \pagestyle{plain}
       \setlength{\textheight}{19cm}
       \vspace*{-3cm}
           .
           .
           .
       \newpage
       \vspace*{-3cm}
           .
           .
           .
       \newpage
       \vspace*{-3cm}
           .
           .

ここでの値の、19cm と -3cm ( マイナスです ) は各自の好みで変化させてください。 また、\newpage を TeX 文書のどこに 書けばよいかですが、それは dviout でプレビューすればページの 切れ目がわかりますから、その場所に \newpage を書き込めば良いわけです。

▲ Section 7


(4) \vspace と \vspace* と \hspace と \hspace* :

TeX 文書は、非常に細かい微調整が自分の好みで出来るように なっています。 実際に、 文字を 1 スケールドポイント = 約 5.4 × 10 -6 mm で 配置できるのです。 そこで、 TeX 文書の微調整 をおこなう時に 大活躍する のが次の 4 つのコマンドである \vspace\vspace*\hspace\hspace* であります :

コ マ ン ド 命 令 の 意 味
\vspace { height } 行間を height の値だけ空ける
\vspace* { height } ページの頭に使う \vspace 命令
\hspace { width } 文字の間を width の値だけ空ける
\hspace* { width } 行の頭に使う \hspace 命令

上でも述べたように TeX は、細かい微調整が可能です。 それを充分に 可能にするのが、ここにあげた \vspace\vspace*\hspace\hspace* の 4 つのコマンドなのです。

極端なことを述べれば、 『 この 4 個を確実に使いこなせれば、なんでもできる 』 と私自身は考えることがあります。
さて上の 4 個のコマンドでは、 そのつどに height および width の値を指定するわけですが、 次の 第(5)項 では値の指定が必要 なく簡単に利用できる 代用コマンド に ついて説明しましょう。

▲ Section 7


(5) \quad と \medskip :

まず始めは TeX 文書の中において、 文字の間に微小な空白 を空けたい時に用いるコマンドです :

コ マ ン ド 空 白 の 幅 数式モード以外
\quad 全角の空白 ( クワタ ) 利用 可
\qquad \quad の 2 倍 利用 可
\_ \quad の半分 利用 可
\, \quad の 1/6 倍 利用 可
\> \quad の 2/9 倍 利用不可
\; \quad の 5/18 倍 利用不可
\! \quad の -1/6 倍 利用不可

上の表でのコマンド \_ は、 \ の後に 1 バイト文字の空白 の意味を表しています。
さて、最初 4 個のコマンドは 普通の文書 のなかで使うことができますし、残りの 3 個は 数式モード で用いるとその威力のほどが理解できるはずです。
例えば、 領域 D 上での関数 f(x,y) の重積分 は次のように表すことができます。 ここで、 eqnarray* 環境 は数式を番号なしで別行立てする環境です :

         \begin{eqnarray*}
         \int \!\!\! \int_D f(x,y)\,dx\,dy
         \end{eqnarray*}

次は TeX 文書の中において、 段落の間に適当な大きさ を空けるときに用いるコマンドです :

コ マ ン ド 空 白 の 大 き さ 空 白 の 数 値
\smallskip 小 さ い 2pt から 4pt
\medskip 中 ぐ ら い 4pt から 8pt
\bigskip 大 き い 8pt から 16pt

ここで、数値の 1pt (ポイント) を 日本では 0.3514mm (ミリメートル) と しています。 この表からもわかると思いますが、 空白の数値 にばらつきが出てくるのは TeX 文書をコンパイルするときに、ページを 組み上げていく過程により変化するからです。 どうしてもきちんとした 値で行間を空けたいならば 第(4)項 で紹介した \vspace または \vspace* を利用すると良いでしょう。
そのような例として、次を見ることにしましょう。 コマンドの \verb は、原稿の通りに出力できことを 可能にする命令です ( ここで、用いた ascmac.sty\yen については、次の 第(6)項 で解説します ):

         \documentclass[b5paper,12pt]{jarticle}
         \usepackage{ascmac}
         \pagestyle{plain}
         \begin{document}
         普通の改行です。

         コマンドを利用した改行例です。 小さな空白ができます。
         \smallskip

         次に、中ぐらいの空白ができます。
         \medskip

         そして、大きな空白ができます。
         \bigskip

         このように、コマンドで改行幅を調整することができます。

         \newpage
         続いて、\yen \verb|vspace| を用いた改行例です。 まず、普通の改行です。

         次に、3pt の空白ができます。
         \vspace{3pt}

         さらに、6pt の空白ができます。
         \vspace{6pt}

         そして、12pt の空白ができます。
         \vspace{12pt}

         このように、\yen \verb|vspace| で改行幅を精密に調整することもできます。
         \end{document}


▲ Section 7


(6) ascmac.sty について :

アスキー社 が開発したスタイルファイルの ascmac.sty は、 pLaTeX2ε に標準装備されています。 この ascmac パッケージ を エディタで開いてみると、次のような一行が書いてあります :
\input { tascmac.sty }
つまり、本体は tascmac.sty なのです。 そして、エディタで開いてみると色々なことがわかります。
例えば、第(5)項 で述べた ¥記号 を出力するコマンドですが TeX では ¥記号 が特別な意味を持つために、標準では この記号は出力できません。 そのために代用として、2 バイト(全角)文字 の¥を用いたり、英語の Y に等号の = を 重ね書きするコマンドの \llap を利用して Y\llap= などと書いたりします。
そして、ascmac.styのなかにも 便利な記号の出力コマンドのひとつに ¥記号 を出力するコマンドとして \yen が含まれています。 このなかで \yen は次のように定義されています :



\def\yen{\leavevmode\hbox{\iftdir\yoko\fi
\setbox0=\hbox{Y}Y\kern-.97\wd0\vbox{\hrule height.1ex width.98\wd0
\kern.33ex\hrule height.1ex width.98\wd0\kern.45ex}}}


ここに、何が書いてあるのかを 解読 できますか?
( これは TeX の言葉 で、 ¥記号 のコマンド \yen は 英語の Yヨコ棒 2 本 から作ると書いてあるのです。)

私自身このスタイルファイルを配布プリントに活用しています。 そして その都度思うことは、これは pTeX の開発にたずさわる俊英から、ユーザーへの 心暖まるプレゼント なのではないだろうかということです。 本当に良く出来たスタイル ファイルです。
さて、実際どのようにして利用するのか実例で説明しましょう。 ( 詳しい事柄については 参考 文献 の 中野 著 : 『 日本語 LaTeX2εブック 』 の第 8 章 または 乙部 ・ 江口 共著 : 『 Vol.2 Extended Kit 』 の Chapter 5 が参考になります。)

ここでの例は、すべて私が 2000 年度に配布したプリント ( B5 版12pt ) からの抜粋です。 ( 実際の出力例は、最後でお見せいたします。) つまり、 TeX 文書は 次の二行から始めます

    \documentclass[b5paper,12pt]{jarticle}
    \usepackage{ascmac}

screen 環境 : 角の丸い枠の中に文字列が出力されます。 まわりの線の太さは \thinlines で与えられる 0.4pt です。

    \begin{screen}
    \quad \textbf{5 次以上}の代数方程式の
    \textgt{代数的解法が不可能である}ことの証明を通して、
    \textgt{ガロア理論の基礎}を学習する。
    \end{screen}

itembox 環境 : 上の screen 環境において枠の上部中央にタイトルを付けた形式で出力 されます。 まわりの線の太さは \thicklines で与えられる 0.8pt です。
次の例の中では、ルビを付けるパッケージruby.sty を利用します。

    \usepackage{ruby}
    \begin{itembox}{\Large {\gtfamily \ 概 \hspace{0.8cm} 要 }}
    \quad \ruby{秋桜}{コスモス}の咲く頃となりました。 4 月から
    代数学において行列の基礎を学んで参りました。 これからは、行列の
    \ruby{幾}{\scriptsize ◎}\ruby{何}{\scriptsize ◎}\ruby{学}
    {\scriptsize ◎}への応用についての学習を始めることにしましょう。\\
    {\large {\gtfamily \ 目 \ 標 :}}\,
    {\gtfamily 2 次 \ruby{曲\, 線}{きょくせん} の分類} \, および \,
    {\gtfamily 2 次 \ruby{曲\, 面}{きょくめん} の分類} \, を行う。\\
    \end{itembox}

さて、ここでルビを付ける ruby パッケージruby.sty は、 参考文献 にある 奥村先生の 『 [改定版] LaTeX2ε 美文書作成入門 』 の 85 ページより、次の 13 行からなるファイルに ruby.sty と名前を付けて \tex\platex\base に入れれば良いのです ( 記号の意味は、 同書を参照してください )。 使い方は、上の例が参考になることでしょう :


    \newcommand{\ruby}[2]{%
      \leavevmode
      \setbox0=\hbox{#1}%
      \setbox1=\hbox{\tiny #2}%
      \ifdim\wd0>\wd1 \dimen0=\wd0 \else \dimen0=\wd1 \fi
      \hbox{%
        \kanjiskip=0pt plus 2fil
        \xkanjiskip=0pt plus 2fil
        \vbox{%
          \hbox to \dimen0{%
            \tiny \hfil#2\hfil}%
          \nointerlineskip
          \hbox to \dimen0{\mathstrut\hfil#1\hfill}}}}


shadebox 環境 : 影の付いた長方形の中に文字列が出力されます。 影の幅は、 \shaderule で調節します。 指定がない 場合は 5pt が標準となります。

    \setlength{\shaderule}{4pt}
    \begin{shadebox}
    \vspace{0.3cm}
    \hspace{0.6cm} {\large \textgt{数学とは考えて理解する学問である}} \\
    \hspace{8cm} − {\large \textsl{Anonymous}} −
    \vspace{0.2cm}
    \end{shadebox}

この例を見ると、先の 第(4)項 で私が 『 この 4 個を確実に使いこなせれば、なんでもできる 』 と語った意味が理解していただけることと思います。

boxnote 環境 : メモ用紙を破いたような感じの枠の中に文字列が出力されます。

    \begin{boxnote}
    \quad {\large \textgt{数学 \, 一言メモ:}} \quad 
    {\large \textbf{Q.E.D.}} \ {\large について}\\
    {\normalsize 証明(Proof)の終わりに見かける
    『\textbf{Q.E.D.}』について解説しましよう。
    これはラテン語の「 quod erat demonstrandum 」のことであり、
    英語では「 which was to be demonstrated 」に該当しており、
    「 以上が証明すべきことであった 」 または単に
    「 証明これにて終わり 」 の意味で用いられています。}
    \end{boxnote}

網かけの命令 : コマンドには、 \mask, \maskbox, \Maskbox の 3 種類が用意されています。 これにより、 文字列に網が掛けられて出力されます。 この網掛けのパターンは 11 種類 あります。 下の例では、中央に出力する ために centerminipage 環境を利用しています。

    \begin{center}
    \begin{minipage}{13cm}
    \Maskbox{12cm}{1.5cm}{A}{c}{0.4pt}
    {\LARGE \textgt{代数学特論 夏休みレポート問題}}
    \end{minipage}
    \end{center}

ここで、実際に以上の ascmac.sty を利用して作成した TeX 文書の出力例 をごらんください : ascmac 1ascmac 2


▲ Section 7


(7) Graphics パッケージの使い方 :

このパッケージでは、スタイル・ファイルの graphicx.sty を利用します。 そして、 Ghostscript のインストール がしてあれば、dviout for Windows による EPS 図版の貼り込み も可能になっています。
Graphics パッケージの利用方法の詳細は、 参考文献 の 乙部 ・ 江口 共著 : 『 Vol.1 Basic Kit 1999 』 の Chapter 6 が大変に参考になります。

ここで サンプルのひとつ として、 EPS ファイルの sin.eps を TeX 文書に貼りつけて作成した配布プリントを、まずはご覧になって みてください : サンプルの出力例

さて、この TeX 文書の作成は次のようにします。 まず、 2 次元および 3 次元のグラフを作成する機能を持っている GUNPLOT を用いて postscript eps 形式で出力 した EPS ファイルの sin.eps を TeX の原稿のなかに取り込みます :


    \documentclass[b5paper,12pt]{jarticle}
    \usepackage{graphicx}
       \begin{center}
       \includegraphics{sin.eps}
       \end{center}
    \end{document}

続いて、この原稿を pLaTeX2ε で処理してできる DVI ファイル を dviout for Windows でプレビューする時に、 Ghostscript の利用 により、図版の EPS ファイルを sin.pbm なる PBM 形式に変換 してから dviout でプリントアウトしたものです。
さて、同じように GUNPLOT を用いて作図した関数 y = sin x , y = cos x , y = exp x , y = log (1+x) の Taylor 展開の説明の図 をごらんください : Taylor 展開 1Taylor 展開 2

▲ Section 7


(8) 文書のメリハリについて :

日本語の長いレポートの文章が、小説のように明朝体だけで書いてあると、 思いのほか読みづらいものがあります。 ここで、 TeX 文書における メリハリについて 考えてみることにします。 私が気付くことは、次のようなことです :

  1. 強調したい場所 には ゴジック体\textgt または \textbf ) を利用する。 また、 第(6)項 で説明したパッケージの ruby.sty を使って ルビを付けてみる のも良い。
  2. 文字の大きさ を、変化させる ( \footnotesize、 \small、 \large、 \Large、 \LARGE など )。
  3. 段落の合間に 行間の空白 を設ける。 そして、この空白には 大小の違いをつけてみる ( 第(4)項\vspace、 \vspace* または 第(5)項\smallskip、 \medskip、 \bigskip の利用 )。
  4. 文字間の空白の微調整 をしてみる ( 第(4)項 で解説してある \hspace、 \hspace* または 第(5)項\quad、 \qquad、 \, などを利用 )。
  5. 目立つ項目 に、 左揃えflushleft 環境 )、 中央揃えcenter 環境 )、 右揃えflushright 環境 ) を適用してみる。
  6. 標準書体を利用している時 には、 Section 5 で解説してある、欧文および日本語の Windows の TrueType フォントの利用 を試みる。
  7. 標準書体を利用している時 には、所々に Section 6 で解説してある PostScript フォントの利用 を試みる。
  8. 第(6)項 で説明した アスキー社パッケージ ascmac.sty にて、 screen 環境、 itembox 環境、 shadebox 環境、 boxnote 環境、 網かけの命令 などを利用して、目を引くように心掛ける。
  9. 箇条書きにする ( itemize 環境、 enumerate 環境、 description 環境 の利用 )。
  10. を入れてみる ( tabular 環境 の利用 )。
  11. を書いてみる ( picture 環境、 graphics パッケージ の利用 )。
  12. カラーでの出力 を試みる ( color パッケージ の利用 )。
ほかにも注意すべき点があるかも知れませんが、少なくとも 上記した 12 項目 について は記憶に留めておいてください。


できるだけ早く、これらの 重要なコマンド自分自身のもの にしていただけたらと 思っています。

さて TeX を習い初めのころ は、コマンドを 覚えたりで苦労するものです。 ただ一つ確実に言えるのは、解説書をいくら 読んでもなかなか上達しないことなのです。
大切なのは、 まず自分自身で TeX 文書を書いてみること。 そして、どのような組版結果が出力されるかを dviout for Windows などで プレビューしてみることです。 その結果、直す。 もう一度、プレビューしてみる。 そして、また直す。 さらに、もう 一度プレビューしてみる。 さらに、また直す。 この繰り返しを体験することなのです。

TeX 文書を書いて、何度も、何度も上で述べたことを繰り返すのです。 時間がかかるかも知れませんが、この過程の中で少しずつ色々な事柄が身に つくのです。 そして、次第に自分のスタイルが出来あがっていくのです。

新しく始める pLaTeX2ε は、決して難しいものではありません。
そして、これからの学習においては pLaTeX2ε を楽しむこと ( Enjoy !!! ) を忘れないでください。
このことが、みなさんに 一番にお伝えしたかった ことなのです。


Section 7 △ ▲ Contents


Kohsaku HOTTA
www.khotta.org