pLaTeXからLuaLaTeXへ
pLaTeXからLuaLaTeXへ
久々に美文書9版(2023.12)を見たら、8版からLuaLaTeXに移行。世間もLuaに…
これからの文書はLuaの方が良いようです。
変更点
pdfまで出力。すべてのfontが埋め込まれる。
fontがIPAexから原ノ味(Adobeの源ノ明朝+源ノゴシックを再編成したもの)
味はadobe japan 1のもじりらしい(美文書9版p.240)クラスファイルはjlreqがおすすめ。
zwは\zwへ
\bfは\textbfへ。 \mathbfもあり
Template
fontsize=24pt,paper=a0paperなどとできるようです。
1%#! lualatex -synctex=1 lua_template.tex
2\documentclass[fontsize=24pt,jafontscale=0.9247,paper=a0paper]{jlreq}
3%\usepackage[left=20.4truemm,top=20.4truemm,right=20truemm,bottom=20truemm]{geometry}%余白指定したい時
4\usepackage{graphicx}%option dvipdfmxは不要(記述厳禁)
5\usepackage{unicode-math}%amsmathの代わり,amssymbも不要
6\usepackage{color}
7
8\def\bm#1{\symbfit{#1}}
9\def\theenumii{\arabic{enumii}}%enumerateiiを数字にする
10\def\theenumiii{(\alph{enumiii})}%enumerateiiiを(a)にする
11
12\begin{document}
13
14\section{サンプル}
15
16\begin{align}
17&\dot{x}(t)=\bm{Ax}(t)+\bm{bu}(t) \\
18&\bm{A}=
19 \begin{pmatrix}
20 a & b\\
21c& d
22 \end{pmatrix}\label{eq:amat}\\
23&y=\bm{cx}(t)
24\end{align}
25
26式(\ref{eq:amat})で示す$\bm{A}$は正定行列である。
27
28\section{fugo}
29
30図\ref{fig:ff}は実験hogeの結果を示す。
31
32\begin{figure}[h]
33\centering
34
35\includegraphics[width=0.3\textwidth]{hoge.pdf}
36\caption{hogehoge}\label{fig:ff}
37\end{figure}%
38%空白出力抑制のため、end{figure}の後ろに%をつけましょう
39
40\begin{figure}[h]
41
42\hfill
43\begin{minipage}{0.47\textwidth}
44
45\includegraphics[width=\textwidth]{hoge.pdf}
46
47\end{minipage}
48\hfill
49\begin{minipage}{0.47\textwidth}
50
51\includegraphics[width=\textwidth]{hoge.pdf}
52
53\end{minipage}
54\hfill~
55
56\end{figure}
57
58\end{document}
documentclassはjlreqを使う
jlreqはarticle相当。option指定でreport, book
紙サイズはpaper=a5paper,b5jオプションで指定
a0paperができる!posterサイズ!
文字サイズ指定は英日別可,fontsize=12pt,jafontscale=0.9247など
デフォルトは10pt,1。j(s){article,report,book}はobsoleteにする。
jlreqでは、center環境の前後半行分の空白はなくなった。
.サンプル
1\documentclass[fontsize=12pt,jafontscale=0.9247,report,paper=b5j]{jlreq}%report,JIS B5判
数式パッケージはunicode-math
amsmath,amssymbは不要。どうしても読み込みたい場合は、
unicode-mathの前にinclude。フォント周りもunicode-mathでok, txfontsはレガシー。
unicode-mathを読み込まないならlmodernを読み込む。これでフォントは LatinModernになる。
全部のギリシャ文字をイタリックにしたいときは(p.84)
1\usepackage[math-style=ISO,bold-style=ISO]{unicode-math}
\symup{}, \symit{}で立体とイタリック体個別に切替られる。
これまでの、varepsilon,vardeltaは有効
数式環境はalign(unicode-math必要)を使用。equationは不完全。
\bm{}は使えませんでした。\usepackage{bm}して\bm{}すると文字消えました。
\bmを\symbfitにします。追加packageは不要。unicode-mathだけです。
面倒くさいときは
1\def\bm#1{\symbfit{#1}}
- lualatexでトラブル出たら、lualatex-mathを読み込めば解決するかも
数式の新しい知識
数式中に文書いれる時は\intertext{日本語}
数式中の改ページは\displaybreak[0]で可能
txfontsは newtx, newpx, に新しくなったけど、レガシーだから使わないほうがいい??
両方とも未実装だった。newtxtext,newtxmathも未実装だった。
図は、pdf,png,jpgでinclude。
- inkscapeでpdfに保存するときは、保存時の出力ページオプションで、「エクスポートオブジェクトのサイズを使用」をcheck
- pdfに出力するのでepsにする必要はない。
- p.126: inkscapeにはpdf+latexという保存方法があり…と書かれているが inkscape1.2には未実装?
Presentation, beamerを使う
テンプレートは以下
1%#! lualatex -synctex=1 lua_beamer_template.tex
2\documentclass[aspectratio=169]{beamer}
3%\documentclass[fontsize=24pt,jafontscale=0.9247,aspectratio=169]{beamer}%fontsize指定は効かない
4
5\usepackage[no-math,deluxe]{luatexja-preset}%美文書
6%\usepackage{luatexja}%beamerでは漢字表記に必要。
7\renewcommand{\kanjifamilydefault}{\gtdefault}%太字にする
8\renewcommand{\emph}[1]{{\upshape\beseries #1}}
9
10
11\usetheme{CambridgeUS}
12%\setbeamertemplate{footline}[default]%フッタ表示なし
13\setbeamertemplate{footline}[framenumber]%フッタにページだけ表示
14\setbeamertemplate{headline}[default]%ヘッダなし
15\setbeamertemplate{navigation symbols}{}%ナビゲーションバーを表示しない
16
17\usepackage{graphicx}%option dvipdfmxは不要(記述厳禁)
18\usepackage{unicode-math}%amsmathの代わり,amssymbも不要
19\usepackage{color}
20
21\def\theenumii{\arabic{enumii}}%enumerateiiを数字にする
22\def\theenumiii{(\alph{enumiii})}%enumerateiiiを(a)にする
23
24\begin{document}
25
26
27\begin{frame}
28\frametitle{タイトル}
29\framesubtitle{サブタイトル}
30
31 \begin{minipage}{0.47\textwidth}
32minipageで
33 \end{minipage}
34 \begin{minipage}{0.47\textwidth}
35 左右に分割するより
36 \end{minipage}
37
38\begin{columns}
39 \begin{column}{0.47\textwidth}
40
41column(s)
42
43 \end{column}
44 \begin{column}{0.47\textwidth}
45
46で分けたほうが簡単とのことです(why?)
47
48
49 \end{column}
50\end{columns}
51
52
53
54\end{frame}
55
56\end{document}
powerdotはdvips経由なので、luaでは動かないようです。
新しい知識
- 温度記号のcelsiusは\textcelsius, mathcomp読み込むと\tccelsius。
- figure環境は\end{figure}%と最後に%をつけて、空白出力抑制
- \hrulefill、\dotfill で横線描画
- ルビは \usepackage{luatexja-ruby}使用。pxrubricaより強力
1\ruby{尤度}{ゆう|ど}は\ruby{犬}{いぬ}度ではない%pxruburica
2\ruby{薬|缶}{や|かん}%p.247,luatexja-ruby
- fontの埋め込みchk
1pdffonts hoge
- ドキュメント表示
1texdoc jlreq
2texdoc -l texlive
-lはあいまい検索。候補表示
文書は内容、構成、レイアウトを分けて作成する。
wysiwyg(what you see is what you get)では、どうしてもレイアウトに視点が行ってしまう。 overleafでも免れない。
とにかくwordはおせっかいなので、文書校正しているのにレイアウト色々勝手に 変更してくるので、集中の妨げになります。 おまけにレイアウト設定(変更)方法を知らないと文書ができないなんて変です。 マークアップ方式を普及させましょう。
以下大いに同意です。
【雑談】MS Wordは文書作成ソフトではないのでは……という話
LaTeXで文書を作成していると、内容(本文)と構成(章立て)とソースコー ド(プログラミング)と紙面レイアウト(デザイン)をそれぞれ整理する必要 があります。この4要素を一度に整理することはほとんど不可能で、 LaTeX文書と向き合うときはこのどれに集中しているのかを意識する必要があります。 これは一見して不便なようですが、意識すれば分けられるというのは、むしろ 嬉しい要素です。