我在尝试使用以下方法创建下图时遇到了一些问题宜川深网:
我的文档标题是
\documentclass[12pt,openright,oneside,a4paper,english,brazil]{abntex2}
\usepackage[utf8]{inputenc}
\usepackage{tikz-cd}
该网站生成了以下代码:
\begin{tikzcd}
n_1 \arrow[rr, "R"] \arrow[rd, "at"'] & & n_2 \\
& f_1 \arrow[ru, "at^{-1}"'] \arrow["S"', loop, distance=2em, in=305, out=235] &
\end{tikzcd}
我得到了这个结果,但有几条错误消息:
对于这个问题您有什么想法吗?
答案1
您的示例会产生错误。问题在于,使用 brazil 选项abntex2
加载babel
,这会更改 的 catcode "
。请参阅此回答了解更多信息。不过与该问题不同,加载 babel tikzlibrary 确实可以解决问题。
\documentclass[12pt,openright,oneside,a4paper,english,brazil]{abntex2}
% \usepackage[utf8]{inputenc} %% not needed
\usepackage{tikz-cd}
\usetikzlibrary{babel} %% added
\begin{document}
\begin{tikzcd}
n_1 \arrow[rr, "R"] \arrow[rd, "at"'] & & n_2 \\
& f_1 \arrow[ru, "at^{-1}"'] \arrow["S"', loop, distance=2em, in=305, out=235] &
\end{tikzcd}
\end{document}
请注意,\usepackage[utf8]{inputenc}
最新的 LaTeX 不需要这样做。