PREVIOUS | TOP | NEXT

(第5回)LaTeX 文書作成入門

今日の目標

LaTeX を使った文書作成が出来るようになる。

LaTeX の手始め

『LaTex』はD. E. Knuthのつくった文書整形システム 『TeX』を、L. Lamportが発展させたものです。 物理や数学の分野では広く用いられています。
このシステムでは、文書を作成するためにプログラミングを行ないます。何とも奇妙なものですが、慣れるとその便利さが分かるようになるでしょう。

LaTeX 文書作成作業の流れについて

  1. emacs などのテキストエディタでソースファイル(source file)を作成する。
    emacs filename.tex &
  2. ソースファイルをコンパイル(LaTeXコード⇒DVI形式)する。
    platex filename
  3. DVIファイルをPDFに変換する。
    dvipdfmx filename.dvi
  4. 出来上がったPDFファイルを閲覧する。
    evince filename.pdf &
  5. プリンタに出力する。
    『ドキュメントビューア』のメニューで ファイル → 印刷 をえらぶ。

具体的な作業例

  1. まず、この授業用のディレクトリに移動する。
    $ cd Documents
    
  2. ソースファイルの作成。
    次のLaTeXソースファイルを『emacs』で作成 してください。
    $ emacs fermat1.tex &
    
    ファイル名は 「fermat1.tex」 としましょう。 (LaTeXのソースファイルは、常に「 .tex 」で終わるファイル名にします。)

    (ヒント1)日本語入力に入るには、「半角/全角 漢字」キー、 もう一度「半角/全角 漢字」で英数入力に戻る。 あるいは、emacs のなかでは、「Control+¥」 で日本語入力モードに入ることもできる。もう一度Control+¥で英数入力に戻る
    (ヒント2)\は¥キーで入力できます。
    \documentclass{jsarticle}
    \begin{document}
    %%%%%%%%%%%%%%%%%%%%%%%%%%
    %%%    fermat1.tex    %%%%
    %%%%%%%%%%%%%%%%%%%%%%%%%%
    フェルマー(Fermat)は、整数$m$があたえられたとき、
    整数$x, y$にかんする方程式:
    \begin{equation}
    x^2 + y^2 = m
    \label{eqn:quad}
    \end{equation}
    の解を構成するために、
    恒等式:
    \begin{equation}
    (x^2 + y^2) (x'^2 + y'^2) 
    = (x x' - y y')^2 + (x y' + x' y)^2
    \label{eqn:lagrange2D}
    \end{equation}
    を用いた。
    \\
    
    {\bf 参考文献}\\
    \noindent 
    H. Cohn, {\em Advanced Number Theory}, 
    (Dover, Mineola, N.Y., 1980). pp 2--4.
    \bigskip
    {\LARGE
    {\bf クラス(A2, あるいはB2)、学籍番号、名前}
    }
    \end{document}
    
  3. コンパイル
    LaTeXソースファイルのコンパイルは platex というコマンドを用います。
    以下を実行すると、「fermat1.tex」をコンパイルして、新たに 「fermat1.dvi」というファイルと、 「fermat1.aux」, 「fermat1.log」を作成します。
    .dvi 」で終わるファイルが DVI 形式ファイルと呼ばれ、文書の文字配置の情報を含んだファイルです。
    $ platex fermat1.tex
    
    あるいは、コンパイルの時は拡張子(「.tex」)を省略して
    $ platex fermat1
    
    とすればじゅうぶんです。
    様々なメッセージが出力されると思いますが、これは処理の進行具合を表示しているものです。
    fermat1.dviが作成されたことを ls で確認しましょう。
    $ ls fermat*
    fermat1.aux  fermat1.log
    fermat1.dvi  fermat1.tex
    
    もし何らかの間違いが検出されたときは、LaTeXコンパイラは処理を中断して、今後の処理をどうするか尋ねます。
    その場合は x をタイプして強制終了してください。そしてemacsでソースファイルの間違いを修正し、再びコンパイルします。
  4. DVIファイルからPDFファイルへの変換
    $ dvipdfmx  fermat1.dvi
    $ ls fermat*
    fermat1.aux  fermat1.log  fermat1.tex
    fermat1.dvi  fermat1.pdf
    
    fermat1.pdfができているはずです。
  5. PDFファイルの閲覧
    PDFファイルの閲覧は『ドキュメントビューア』をつかう。
    $ evince fermat1.pdf &
    
    うまく出力されましたか?出力結果が期待(仕様)どおりになれば、LaTeX文書作成は終了です。
    もし、期待通りに出力されない場合はソースコードを修正するところからやり直して、期待通りになるまで繰り返すことになります。すなわち、再度コンパイル し、DVIからPDFをつくります。 このとき、『ドキュメント・ビューア』は最新の結果を自動的に読み込んでくれます。文章の長い場合、読み込みにすこし時間のかかるときもあります。
  6. プリンタへの出力
    『ドキュメント・ビューア』によってPDFファイルの閲覧した結果、文章が完成したと判断できた場合は、それをプリンタで出力することになります。
    『ドキュメントビューア』のメニューで
    ファイル → 印刷 をえ
    らぶ。
    (あるいは、「Ctrl - p」でもよい。)
    出てきたウィンドウで印刷ボタンを押す。
    
  7. シェルのヒストリー機能
  8. シェル(いまの場合「Bash」)が、端末から入力した一連のコマンドを記憶してくれています。「C- p」(あるいは、「↑」)で前のコマンド、 「C- n」(あるいは、「↓」)で次のコマンド、が出ます。 また、「C -f」、「C - b」、「C - d」等、『emacs』 とおなじキーのつかいかたで、コマンドを編集することができます。また、「C - r」で以前に入力したコマンドの検索をすることもできます。この機能をつかうと、何度もおなじようなコマンドを入力せずに済むので、能率があがります。慣れてくると、GUIよりも楽なようになります。
  9. オプション
  10. 暇なひと、余裕のあるひとは、「fermat1.tex」 をより詳しくした fermat2.tex のファイルも試してみましょう。

グラフを LaTeX 文章の中に取り込む

下の LaTeX ファイルは、前回までに作成したグラフと絵を LaTeX 文章の中に取り込んだ文章の例です。
各自入力しましょう。ただし、著者名 学生番号とあるところは、各自の名前、学生番号をタイプすること。
ファイル名は 「taylor.tex 」としましょう。

  \documentclass[12pt]{jsarticle}
  \usepackage{amsmath,amssymb}
  \usepackage{graphicx}
  \begin{document}

  \title{図入りのLaTex文書作成}
  \author{著者名 学生番号}

  \maketitle
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Taylor展開}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 以下を参考にして、もうすこし近似の精度を上げるなど
% 工夫してもおもしろいでしょう。

関数$f(x)$ を、$x = x_0$ の周りで、$x$のベキ関数で展開すると以下のようになる。
\begin{equation}
 f(x) = f(x_0) + \frac{d f}{dx}(x_0) (x-x_0)
 + \frac{1}{2!} \frac{d^2 f}{dx^2}(x_0) (x-x_0)^2
 + \frac{1}{3!} \frac{d^3 f}{dx^3}(x_0) (x-x_0)^3 
 + \cdots
\end{equation}

例えば、
$\sin(x)$ を $x=0$ の周りで展開すると
\begin{equation}
  \sin(x) = x - \frac{1}{3!}x^3 + \frac{1}{5!}x^5 + \cdots
\end{equation}
となる。

図\ref{fig:taylor}は、$\sin(x)$に関するテイラー展開の様子を表したものである。

\begin{figure}[hb]
\centering
 \includegraphics[width=8cm]{taylor.eps}
 \caption{関数 $\sin(x)$ とその$1$次、$3$次、$5$次までの taylor 展開のグラフ}
 \label{fig:taylor}
\end{figure}

展開式の次数が増えるにしたがって、
$\sin(x)$ への近似が良くなっていることがわかる。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{GIMPでつくった画像の取り込み}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 各自、初回に描いた絵をGIMPでeps形式に変換して、
%「taylor.tex」とおなじディレクトリー(Documents)に
% 置いておく必要がある。
例 

\begin{figure}[hb]
\begin{center}  
    \scalebox{.3}{\includegraphics{piment.eps}}
 \caption{GIMPで描いた絵}
 \label{fig:piment}
\end{center}
\end{figure}

ピーマンの絵筆で、立命の「R」を描きました。
\\

\noindent
\copyright \ 2014 名前
\end{document}

上のファイルを保存したあと、platexでコンパイルし、dvipdfmxでDVIファイルをPDFに変換し、できあがったPDFファイルを、ドキュメント・ビューアによって閲覧してみてください。

$ platex taylor
$ dvipdfmx  taylor.dvi
$ evince taylor.pdf &

gnuplot で作成した図が組み込まれて出力されていると思います。 ですが出力をじっくり読んでみると、??となっているところがあると思います。
これは図番号の参照がうまくいっていないことを表しています。
もう一度 platex でコンパイルしてください。参照番号がちゃんと更新されるはずです。

プリンタへの出力

PDFファイルをつかいます。

『ドキュメント・ビューア』のメニューで
ファイル → 印刷 をえらぶ。
(あるいは、「Ctrl - p」でもよい。)
出てきたウィンドウで印刷ボタンを押す。

課題の説明

\documentclass[12pt]{jsarticle}

フォントサイズ 12、スタイル jsarticle を用いることの指定。

\usepackage{amsmath,amssymb}
\usepackage{graphicx}

追加パッケージ(追加機能)を読み込む。amsmath,amssymb は数学記号処理のパッケージ、 graphicx はグラフィック(図)を使うためのパッケージです。

\title{図入りのLaTex文書作成}
\author{著者名 学生番号}

\maketitle

論文タイトルと著者を指定して、\maketitle で表題を作成します。

%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Taylor展開}
%%%%%%%%%%%%%%%%%%%%%%%%%

LaTexが、「節(section)」を自動でつくってくれます。 波括弧の中が節の題となります。 「%」(もちろん半角英数文字)から始まる行はコメントとして、コンパイラーには無視されます。適宜コメントを入れるとソースコードが分かりやすくなるでしょう。

\begin{figure}[hb]
\centering
 \includegraphics[width=8cm]{taylor.eps}
 \caption{関数 $\sin(x)$ とその$1$次、$3$次、$5$次までの taylor 展開のグラフ}
 \label{fig:taylor}
\end{figure}

図を挿入します。
\begin{figure}~\end{figure}で、図を描くスペースを確保し、
\includegraphics[width=8cm]{taylor.eps}で、taylor.epsを組み込み、
\caption で、図の説明を書き、
\label{fig:taylor}で、図番号を fig:taylorという名前で参照できるようにする。図番号を参照するには:

\ref{fig:taylor}

のようにすれば、fig:taylorが参照する番号を表示します。

  \scalebox{.3}{\includegraphics{piment.eps}}

こんどは倍率を指定して、eps画像を取り込んでいます。 適当な倍率をつかうとよいでしょう。

もちろん、初回に描いた絵をGIMPでeps形式に変換して、 「taylor.tex」とおなじディレクトリー(Documents)に 置いておく必要があります。たとえば、元々のGIMP画像が「PicBox」にあるとします。

$ cd ~/PicBox
$ ls 
 piment.xcf
$ gimp piment.xcf &

このあと、

GIMPのメニューで、
「ファイル」→ 「名前を付けて保存」
そのあと、
「ファイルタイプを選択」で「EPS形式」を選んで「保存」
。

これでEPSファイルができました。確認しましょう。

$ ls
piment.eps  piment.xcf

つぎにEPSファイルの移動です。

$ mv piment.eps ../Documents
$ cd ../Documents
$ ls
fermat1.pdf   fermat2.tex~  taylor.log
fermat1.tex   piment.eps    taylor.pdf
fermat1.tex~  taylor.aux    taylor.tex
fermat2.pdf   taylor.dvi    taylor.tex~
fermat2.tex   taylor.eps

これで、「piment.eps」もLateX用の作業ディレクトリ 「Documents」に入りました。
この後は、「taylor.tex」のコンパイル以降の 作業に入ります。

今日の課題

例題で作成した文章「fermat1.pdf」と 「taylor.pdf」を印刷して提出すること (時間内に必須)。


PREVIOUS | TOP | NEXT