我正在尝试使用 制作演示文稿beamer
,并且主要从已编译的文件中复制.tex
(使用 documentclass memoir
)。但我收到此错误:
\mathfrak allowed
only in math mode.
当我删除 tikz 部分时,问题就消失了。
代码如下。
\documentclass{beamer}
\usepackage{tikz}
\usepackage{tikz-cd}
\usepackage{amsmath}
\usepackage{amsopn}
\usepackage{xr}
\usepackage{physics}
\usepackage{txfonts}
\DeclareMathOperator{\Hom}{Hom}
\DeclareMathOperator{\End}{End}
\DeclareMathOperator{\Vir}{Vir}
\DeclareMathOperator{\Ind}{Ind}
\DeclareMathOperator{\Der}{Der}
\DeclareMathOperator{\Witt}{Witt}
\usetheme{Warsaw}
\usecolortheme{whale}
\begin{document}
\begin{frame}
\frametitle{Centralna proširenja Liejevih algebri}
Centralno proširenje Liejeve algebre $\mathfrak{g}$ je kratki egzaktni niz
Liejevih algebri:
\begin{center}
\begin{tikzcd}
0 \arrow{r}
&\mathfrak a \arrow{r}{\iota}
&\hat{\mathfrak{g}} \arrow{r}{\pi} &\mathfrak{g} \arrow{r}
&0
\end{tikzcd}
\end{center}
takav da je $\iota(\mathfrak a) \subseteq Z(\hat{\mathfrak g})$.
\end{frame}
\end{document}
答案1
由于使用了 catcode 技巧tikz-cd
以及处理框架的方式beamer
,您需要图表ampersand replacement
的密钥tikz-cd
:
代码:
\documentclass{beamer}
\usepackage{tikz}
\usepackage{tikz-cd}
\usepackage{xr}
\usepackage{physics}
\usepackage{txfonts}
\DeclareMathOperator{\Hom}{Hom}
\DeclareMathOperator{\End}{End}
\DeclareMathOperator{\Vir}{Vir}
\DeclareMathOperator{\Ind}{Ind}
\DeclareMathOperator{\Der}{Der}
\DeclareMathOperator{\Witt}{Witt}
\usetheme{Warsaw}
\usecolortheme{whale}
\begin{document}
\begin{frame}
\frametitle{Centralna proširenja Liejevih algebri}
Centralno proširenje Liejeve algebre $\mathfrak{g}$ je kratki egzaktni niz
Liejevih algebri:
\begin{center}
\begin{tikzcd}[ampersand replacement=\&]
0 \arrow{r}
\&\mathfrak a \arrow{r}{\iota}
\&\hat{\mathfrak{g}} \arrow{r}{\pi} \&\mathfrak{g} \arrow{r}
\&0
\end{tikzcd}
\end{center}
takav da je $\iota(\mathfrak a) \subseteq Z(\hat{\mathfrak g})$.
\end{frame}
\end{document}
无需明确加载amsmath
或amsopn
使用beamer
。