LaTeX って何?

LaTeX (読み方: ラテフ または ラテック) は、 文書を組版するためのシステムです。 Word のようなアプリではなく、文書をプログラムのように 「ソースコード」で書いて、コンパイルして PDF を作る仕組みだと思ってください。

Word だと「ここを中央寄せ」「ここを太字」とボタンで操作します。 LaTeX では、本文の中に \textbf{...} のような 「マーク」を書き込んでおくと、コンパイル時にその通りに体裁が整います。

数式・長文・参考文献・見出し番号などが 毎回同じ綺麗な体裁で出てくるので、 論文・レポート・技術書で広く使われています。

流れ: ソースを書いて、PDF に変換する

使い方は 2 ステップだけです。

  1. テキストファイル (.tex) に LaTeX のソースを書く
  2. そのファイルを コンパイルして PDF を得る

コンパイルのやり方は 2 通り

  • ローカルに環境を入れる (TeX Live / MacTeX)。 数 GB あり、初心者にはハードル高め
  • クラウドで書く (Overleaf など)。 ブラウザで完結、インストール不要

最初は クラウド型で始めるのがおすすめ。

最初の例: Hello, World!

動く最小の LaTeX はこれだけです。

\documentclass{article}

\begin{document}

Hello, World!

\end{document}

1 行ずつ意味を確認

  • \documentclass{article}
    「この文書は article (記事) スタイルで書きます」という宣言。他に book, report, 日本語なら jsarticle などが選べる。
  • \begin{document}\end{document}
    本文はこの間に書く、という囲み。LaTeX ではこの「begin/end」で範囲を囲む書き方がよく出てきます。
  • Hello, World!
    そのまま本文として PDF に出力される。

タイトル・著者・日付をつける

\documentclass{article}

\title{My First LaTeX}
\author{Your Name}
\date{\today}

\begin{document}
\maketitle

Body text goes here.

\end{document}

※ 例は英語にしてあります。article クラスのまま日本語を入れるとエラーになるので、日本語は後述「日本語で書きたいとき」の設定で。

新しく出てきたコマンドの意味

  • \title{...} / \author{...} / \date{...}
    タイトル・著者・日付を設定するだけ (まだ表示されない)。ふつうはプリアンブル (\begin{document} より前) に書く。
  • \today
    今日の日付に自動で置き換わる。手打ちで書き直す必要なし。
  • \maketitle
    上で設定したタイトル部分を ここで実際に描画する。本文の先頭に書くのが普通。

見出しと文字装飾

\section{Introduction}
This is a normal paragraph.

\subsection{Details}
\textbf{bold}, \emph{emphasis},
and inline math \(E = mc^2\).
  • \section{...}
    大見出し。「1」「2」「3」と自動で番号が振られる
  • \subsection{...}
    小見出し (「1.1」「1.2」)。
  • \textbf{...} / \emph{...}
    太字 / 強調 (通常は斜体)。
  • 段落の区切り: 空行を 1 行入れるだけ (改行だけでは段落は変わらない)。

数式の書き方

数式には 2 種類の書き方があります。

  • インライン (文中に埋め込む): \(...\) で囲む
  • ディスプレイ (別行立てで中央): \[...\] で囲む
Inline math: \(x^2 + y^2 = z^2\).

Display math:
\[
  \int_0^\infty e^{-x^2}\,dx = \frac{\sqrt{\pi}}{2}
\]
is centered on its own line.

基本記号: ^ で上付き、 _ で下付き、 \frac{分子}{分母} で分数。 ここまでは 追加パッケージなし (base LaTeX だけ) で書ける。

複雑な数式 (複数行を揃える align、行列、場合分け、 \mathbb{R} のような数式フォント等) を扱うには amsmath / amssymb パッケージが必要です。 それは別記事「LaTeX で複雑な数式を書く」で解説しています。

演習 1 手を止めて計算してから開く

次の数式を LaTeX のソースで書いてみよう。
0ex2dx=π2\int_0^\infty e^{-x^2}\,dx = \frac{\sqrt{\pi}}{2}

答えを見る

インライン (本文中) なら 0ex2dx=π2\int_0^\infty e^{-x^2}\,dx = \frac{\sqrt{\pi}}{2}

ソースはこう書く:

\int_0^\infty e^{-x^2}\,dx = \frac{\sqrt{\pi}}{2}

各パーツの意味:

  • \int = インテグラル (積分記号)
  • _0^\infty = 下限 0、上限 \infty (アンダースコア = 下、キャレット = 上)
  • e^{-x^2} = ex2e^{-x^2}。波括弧 {...} で指数全体をまとめる
  • \frac{\sqrt{\pi}}{2} = π/2\sqrt{\pi}/2 を分数で
  • \, は細いスペース。dxdx の前に少し空けると綺麗

日本語で書きたいときは

\documentclass{article}\documentclass{jsarticle} に変えれば日本語が使えます。 それ以外は基本同じです。 ただし jsarticle は pLaTeX / upLaTeX 用のクラスで、pdfLaTeX では動きません。 LuaLaTeX を使うなら ltjsarticle です。

ただし ローカル環境で日本語は設定が面倒 (pLaTeX / upLaTeX / LuaLaTeX-ja の選択など)。 初心者のうちは クラウド型で日本語対応のエディタを使うのが無難。

よく詰まるポイント

  • 環境構築が重い → 最初はクラウド型で済ます。
  • 日本語が化ける・エラーになる → エンジンとクラスの組を合わせる (pLaTeX / upLaTeX なら jsarticle、LuaLaTeX なら ltjsarticle)。
  • コンパイルエラーが読めない → 怪しい部分を半分ずつコメントアウト (%) してエラーが消える箇所を探すと早い。