为什么下面的代码无法编译?
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz-cd}
\begin{document}
\begin{center}
\begin{tikzcd}
\Sigma M \arrow[r, "\text{Pinch}"] \arrow[d] & \Sigma M \vee \Sigma M \vee \Sigma M \arrow[d, "(\beta_1 , \beta_2 , \beta_3)"] \\
* \arrow[r, "f'"'] \\
& N
\end{tikzcd}
\end{center}
\end{document}
答案1
你错了\\
,但主要的问题是
\arrow[d, "(\beta_1 , \beta_2 , \beta_3)"]
逗号会使解析器产生混淆。请使用括号。
\documentclass{article}
%\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz-cd}
\begin{document}
\[
\begin{tikzcd}
\Sigma M \arrow[r, "\mathrm{Pinch}"] \arrow[d] &[0.5em]
\Sigma M \vee \Sigma M \vee \Sigma M \arrow[d, "{(\beta_1 , \beta_2 , \beta_3)}"] \\
* \arrow[r, "f'"'] & N
\end{tikzcd}
\]
\end{document}
\mathrm
在这种情况下,比更好\text
。