我正在进行随机实验并想知道在章节标题中插入一些 TikZ。
有了article
,这个
\documentclass{article}
\usepackage{tikz}
\newcommand{\my}{\tikz\draw (0,0) circle (5pt);}
\begin{document}
\section{Introduction \protect\my}
\end{document}
作品。
但如果我使用moderncv
,这个
\documentclass{moderncv}
\usepackage{tikz}
\moderncvstyle{classic}
\newcommand{\my}{\tikz\draw (0,0) circle (5pt);}
\begin{document}
\section{Introduction \protect\my}
\end{document}
不起作用。
为什么?
答案1
hyperref
这是和tikz
和moderncv
负载之间的冲突hyperref
。
解决方案涉及使用\texorpdfstring
来定义您的命令。
像这样:
\texorpdfstring{tikz code}{alternative (empty)}
您的 MWE 应如下:
\documentclass{moderncv}
\usepackage{tikz}
\moderncvstyle{classic}
\newcommand{\my}{\texorpdfstring{\tikz\draw (0,0) circle (5pt);}{}}
\firstname{John}
\familyname{Doe}
\begin{document}
\section{Introduction \protect\my}
\end{document}