TikZ no cabeçalho da seção em moderncv

TikZ no cabeçalho da seção em moderncv

Eu estava experimentando de forma bastante aleatória e pensei em inserir algum TikZ nos títulos das seções.

Com um article, isso

\documentclass{article}
\usepackage{tikz}
\newcommand{\my}{\tikz\draw (0,0) circle (5pt);}

\begin{document}
\section{Introduction \protect\my}
\end{document}

funciona.

Mas se eu usar moderncv, isso

\documentclass{moderncv}
\usepackage{tikz}
\moderncvstyle{classic}
\newcommand{\my}{\tikz\draw (0,0) circle (5pt);}

\begin{document}
\section{Introduction \protect\my}
\end{document}

não funciona.

Por que?

Responder1

É um conflito entre hyperrefe tikze moderncvcargas hyperref.

A solução envolve usar \texorpdfstringpara definir seu comando.

Algo assim:

\texorpdfstring{tikz code}{alternative (empty)}

Seu MWE deve ser o seguinte:

\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}

informação relacionada