
よくわからないけどTeXファイルからスライド形式のPDFを作りたい
某日
教授っち「発表用のスライドをTeXのbeamerで作成してください。提出期限は8/18(日)です」
至急やりたいこと
パワーポイント形式のようなPDFファイルを、TeXで作りたい(OSはWindows)。
下画像のような、よく大学教授が授業資料で使ってるスタイルのあれです。

「TeX?聞いたことはあるけど要はパワポみたいなソフトをインストールするだけやろ?余裕だなガハハw」と思っていざやろうとしたら思いの外ズブズブにハマってしまいました。
優良な記事がたくさんネットで検索できる昨今で本記事の需要があるか分かりませんが、自分のための備忘録や似た状況下に置かれている方のためにメモとして残そうと思います。
この記事を3行で
バカはVisual Studio Codeの拡張機能は使わない。 よくわからんエラーになる
texファイルをPDF形式へコンパイルするコマンドは`lualatex XXX.tex`
Cloud Latexでも同様のことができそう(こっちは諸々のインストール不要)
先に断っておきたいこと
当方、TeXのガチ初心者です。そのため、本記事に書いてあることに「誤解を招く言い回し」や「そもそもの認識誤り」が含まれている可能性があります。
どうかご容赦ください。コメント等で教えて頂けると幸いです。
やること大区分
その1:TeX Liveのインストール
その2:スライド用のレイアウトでtexファイルを作成
その1:TeX Liveのインストール
まずはTeXを自分のPC(Windowsを想定)にインストールします。
https://www.tug.org/texlive/acquire-netinstall.html にアクセスしてください。
『install-tl-windows.exe』をクリック(上から3~4行目)してダウンロードします

ダウンロードの直リンクも貼っておきます。https://mirror.ctan.org/systems/texlive/tlnet/install-tl-windows.exe
ダウンロードしたインストーラをダブルクリックで実行します。右下の『Next >』をクリックします

『Next』をクリックすると表示が切り替わります。続いて右下の『Install』をクリックします

インストールの準備が始まるので暫く待ちます・・

暫く待つと下画像のような別窓が出てきます。『インストール』をクリックしてください。

※他の記事によっては、ここで容量削減のために『高度な設定』からインストールする内容を減らしていたりします。しかし、今後未インストールによるコンパイルエラーを防ぐ意味を含めて私はフルでインストールすることを推奨します(1敗)。
インストール中は時間がかなりかかる(4時間程度)ので気長に待ちましょう。最近シャニマスがアップデートで大富豪が遊べるようになったのでオススメです。
インストールが完了すると、コマンドプロンプトでコマンド`tex`が認識されるようになります。

もしTeX Liveをインストールしたのにコマンドtexが認識されない場合は、下画像のようにTeX Liveのインストール先へのパスを記した環境変数を自身で設定してください(1敗)。

ユーザー環境変数名:Path
追加内容:{TeX Liveをインストールしたフォルダ}\2024\bin\windows
(例:C:\texlive\2024\bin\windows)
インストール時の注意
TeX Liveのインストールが正常に完了した場合はこの項目はスキップしてください
【注意】PCのユーザー名に日本語が含まれていると、インストールが途中で動かなくなります。
というのもインストーラがPC内のtempフォルダに一時情報を書き込むときに、フォルダパスに日本語があると動かなくなるらしいです(1敗)。
インストールが途中で動かなくなっている場合は、環境変数の設定からTempのパスを修正する必要があります。環境変数の編集画面から、『TEMP』と『TMP』の環境変数パスを編集/新規作成します。

(設定する環境変数名の例)
変数名:TEMP
変数値:C:\Temp
変数名:TMP
変数値:C:\Temp
環境変数を追加したら、再度インストールを実行してください。これでインストールが正常に進むはずです。
参考:https://okumuralab.org/tex/mod/forum/discuss.php?d=3785
その2:スライド用のレイアウトでtexファイルを作成
先ほどインストールしたTeX Liveを用いて、PDF形式で出力できるかを確認していきます。
まずコマンド『lualatex』が使えるかを確認
(ここから理解がだいぶあやふや)
texファイル内に\documentclass{beamer}と書くことで、コンパイルするとスライド形式のPDFになるらしい。じゃあどうコンパイルするのか?
【『lualatex』というコマンドを実行することで、texファイルを当該ファイル内で指定した形式(今回はbeamer)のPDFに変換できる】という認識なので、Tex Liveをインストールしたことでコマンド『lualatex』が認識されているかをまず確認しようと思います。
コマンドプロンプトかWindows PowerShellを起動します。
以下のコマンドを入力してください。
lualatex
正常にインストールされていれば以下のように表示されます。
PS C:\Users\{Your name}> lualatex
This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)
restricted system commands enabled.
**

TeXの入力待ちモードに入ってしまうので、Ctrl + Cで元に戻ります。

ここまで実行できれば、TeXのインストールは問題なくできたと思います。
次にPDFを生成できるか確認
コマンド『lualatex』でtexファイルからPDFを生成できるか確認します。
メモ帳などのテキストエディタを使って以下の内容をsample.texというファイル名で保存してください。
% スライド作成のための基本情報を定義
\documentclass{beamer} % スライド用のレイアウト
\usepackage{luatexja} % Beamer単体では日本語を出力できないので追加で読み込み
\renewcommand{\kanjifamilydefault}{\gtdefault} % 漢字をゴシック体に指定
\usetheme{metropolis}
\title{テストスライド}
\author{俺}
\date{\today}
\begin{document}
\begin{frame}
\maketitle
\end{frame}
\end{document}
(本ファイル内容は、https://qiita.com/alpaca-honke/items/bc2ba5a8a68ba5eb3b5a 様より引用しました)
sample.texがあるフォルダから、コマンドプロンプトまたはWindows PowerShellを起動します。やりかたがよく分からい方は、以下の『起動方法その1』または『起動方法その2』を参考にしてください。
起動方法その1
sample.texが保存されているフォルダで右クリックすると、ターミナルで開く(T)があるのでクリックする

すると、当該フォルダをカレントディレクトリとするWindows PowerShellが起動します(画像の例では、『D:\slide-sample』)

起動方法その2
フォルダの名前部分をクリックする(下画像では、『PC > ローカルディスク > slide-sample』が該当箇所)

下画像のように入力モードになるので、『cmd』と入力してEnterキーを押す

すると、当該フォルダをカレントディレクトリとするコマンドプロンプトが起動します

コマンドプロンプトまたはWindows PowerShellに、以下を入力します。
lualatex sample.tex
正常に行けば最後に『Output written on sample.pdf』と表示されています。
PS {sample.texが格納されているディレクトリまでの絶対パス}> lualatex sample.tex
This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)
restricted system commands enabled.
(./sample.tex
LaTeX2e <2024-06-01> patch level 2
L3 programming layer <2024-07-20>
(d:/texlive/2024/texmf-dist/tex/latex/beamer/beamer.cls
Document Class: beamer 2024/01/06 v3.71 A class for typesetting presentations
(d:/texlive/2024/texmf-dist/tex/latex/beamer/beamerbasemodes.sty
【中略】
Output written on sample.pdf (1 page, 7057 bytes).
Transcript written on sample.log.

『sample.tex』が入っているフォルダに、『sample.pdf』があればOK

ダブルクリックで開くと下画像のような1ページのPDFが表示されます。

もっと長いTeXファイルのサンプルをコンパイルする
授業スライドとかでよく見る、青で彩られているスライド(Madridというスタイルらしい)のサンプルを作成しました。

% スライド作成のための基本情報を定義
\documentclass{beamer} % スライド用のレイアウト
\usepackage{luatexja} % Beamer単体では日本語を出力できないので追加で読み込み
\renewcommand{\kanjifamilydefault}{\gtdefault} % 漢字をゴシック体に指定
\usetheme[block=fill]{Madrid}
\title[ここが下部のサブタイトル]{\bf ここがタイトル} % タイトルスライドおよびフッターに表示するスライド名を定義
\institute[ここが括弧付きで下部名前に表示]{ここがタイトルスライド中央に表示} % タイトルスライドおよびフッターに表示する所属機関名を定義
\author{貴方の名前}
\date{2024年8月13日}
% スライド本文作成開始
\begin{document}
\begin{frame} % 1ページ目
\maketitle % \title, \institute, \author, \date で定義した内容で作成される
\end{frame}
\begin{frame} % 2ページ目
\frametitle{1枚目のスライド} % 左上に表示するスライド見出し
本文をここに入力します。 \\ 改行には \textbackslash\textbackslash と入力します。
\begin{block}{ブロックのタイトル}
block領域をここに書けます。 \\ 文字の右下と右上の添え字は $X_{ab}^{cd}$ のように書きます。
\end{block}
\begin{alertblock}{アラート}
alertblockを指定するとこんな風になります。\\ これはフラクトゥール文字 $\mathfrak{F}$ の例です。
\end{alertblock}
\begin{exampleblock}{例}
exampleblockを指定するとこうなります。
\end{exampleblock}
\end{frame}
\begin{frame} % 3ページ目
\frametitle{横並べ}
スライドで左右比較するときなどにこのようにします
\begin{columns}
\begin{column}{.4\linewidth} % 現在の環境の幅の0.4(=40%)の意
\begin{block}{内容1}
左に生成されるカラムの内容です。
\end{block}
\end{column}
\begin{column}{.4\linewidth}
\begin{block}{内容2}
やや右に生成されるカラムの内容です。
\end{block}
\end{column}
\end{columns}
このとき各columnの幅は合計100\%にしてしまうとデザイン的にあんまよくないです
\end{frame}
\begin{frame} % 4ページ目
\frametitle{スライドづくりの留意事項}
- 目次いれる \\
- 1スライド1コンテンツ \\
- MAXで5行、文字をたくさん読ませない
\end{frame}
\begin{frame} % 5ページ目
\frametitle{数式入力の参考}
- 数式記号一覧 https://www27.cs.kobe-u.ac.jp/~masa-n/misc/cmc/j-kiso2001/iabasic/jlshort/node34.html \\
- コマンド一覧 https://medemanabu.net/latex/latex-commands-list/ \\
- ChatGPTで聞く
\end{frame}
\end{document}
(こちらのファイル内容も、https://qiita.com/alpaca-honke/items/bc2ba5a8a68ba5eb3b5a 様より一部引用しました)
このTeXファイル(sample2.tex)についても同様に、以下のコマンドでPDFに変換できます。
lualatex sample2.tex
以上で、TeXファイルからスライド形式の出力の説明が完了です。
紹介記事によってはVisual Studio Code(コードエディター)の導入からTeX関連の拡張機能を入れてコンパイルや!というものもあったのですが、私の環境ではそこで見事にドツボにハマってしまいました。
そのため、本記事ではコマンドを叩くという原始的な方法を紹介させていただきました。
番外編:Cloud LaTeXでスライド形式にコンパイルする
よくわからないけど弄ってみたらCloud Latexでも同様にコンパイルできそうでした。
まずCloud Latexにログインします
ログイン後、マイページから『+ 新規プロジェクト』をクリックします(画像左下部分)

『+ 新規プロジェクト』をクリックすると小ウィンドウが表示されます。ラジオボタンは既存テンプレートのプロジェクトが選択されていることを確認する。プロジェクト名は適当な名前を入力後、『作成』をクリックしてください

プロジェクト名一覧に先ほど作成したプロジェクト名があることを確認して、クリックしてください(画像下部のbeamer_testが当該部分)

プロジェクト名クリック後、下画像のような画面に遷移します

画面中央部のテキスト入力欄に、『もっと長いTeXファイルのサンプルをコンパイルする』で作成したsample2.texのファイル内容をコピペで入力します

次に、画面右上部の『メニュー』をクリックします
『LaTeXエンジン』の項目をクリックします

LaTeXエンジンの一覧が現れるので、『lualatex』をクリックします。

LaTeXエンジンが『lualatex』に設定されていることを確認して、プロジェクト設定画面を閉じます(画面右上部の×をクリックする)

画面右上のコンパイルをクリックします
正常に(?)コンパイルできれば、画面右部の『PDF VIEW』からプレビューを確認できます

※画像では警告が11個出ていますが、本記事では理由や対応策に深追いはしません。よく分からなかいので。
最後に、PDFをダウンロードしたい場合は、画面右上部の『PDF』をクリックすれば別窓でPDFが表示されるのでダウンロードが可能です

以上の内容が、未来にだれかの役に立てれば幸いです。