Dockerで簡単TeX環境構築
2020/01/07やりたいこと
.tex を PDF にコンパイルしたい
手順
注意
最初のコンパイル時に約1.1GBのダウンロードが発生します.そのため,有線ネットワークに接続して作業することをおすすめします.
1. Docker環境を整える
Docker環境が必要です.使用しているOSにあわせて,各自セットアップします.
2. オプションを選ぶ
コンパイルしたい .tex に合わせて, latex mode
と bibtex mode
を決めます.
latex mode
使用するlatex環境を次の中から選んでください.
- latex
- platex(latexを日本語対応したもの)
- uplatex(platexをUnicode対応したもの)
bibtex mode
使用する文献DBを次の中から選んでください.
- 文献DBを使用しない
- bibtex
- pbibtex
- upbibtex
3各種ファイルの配置
3.1 tex2pdf
Mac,Linux,WSLを使用している場合は,tex2pdf.shを,texファイルがあるディレクトリに保存します.
Windowsを使用している場合は,tex2pdf.batを,texファイルがあるディレクトリに保存します.
3.2 latexmk
次のテキストをlatexmkrc
というファイル名で,texファイルがあるディレクトリに保存します.
$latex = '[latex mode] --shell-escape';
$bibtex = '[bibtex mode]';
$dvipdf='dvipdfmx %O %S';
[latex mode]
と[bibtex mode]
は各自が選んだオプションに置き換えます.例えば,$latex = 'uplatex --shell-escape';
のようにします.
ただし,bibtex mode
で文献DBを使用しない
を選んだ方は,2行目の$bibtex = '[bibtex mode]';
を行ごと削除します.
4. コンパイル
お使いの環境に合わせて,./tex2pdf.sh [tex file]
または./tex2pdf.bat [tex file]
を実行します.
ただし,[tex file]
はコンパイルしたいtexファイルの名前で置き換えます.例えば,./tex2pdf.sh main.tex
のようにします.
特徴
TeXをコンパイルするDockerイメージの中では,比較的多機能でイメージサイズが大きいという特徴があります.ubuntu:bionic
をベースに,texlive関連のパッケージを(recommendsパッケージも含めて)多めにインストールしてあります. そのため,ほとんどの文書をコンパイルできますが,イメージサイズが約2.6GBもあります.
機能
一般的なtexliveの機能が利用できます.
以下の機能が動作することを確認しました.
- 図の挿入
- graphicx
- png,jpg,gif,svg,eps,pdfを挿入可能
- BBの自動生成
- graphicx
- 文献DB
- bibtex
- pbibtex
- upbibtex
- biber
- 表の拡張機能
- tabularx
- ソースコードの表示
- listings
- 日本語を含むソースコードの表示
- jlistingsをダウンロードし,texファイルと同じ場所に配置します.
- フォントの埋め込み
- IPAフォントをPDFに埋め込めます
- プリアンブルに
\AtBeginDvi{\special{pdf:mapfile ptex-ipa.map}}
- 図表や章節へのリンク,PDFアウトライン
- hyperref
- pxjahyper