![Accents 包在字幕中不起作用](https://linux22.com/image/433521/Accents%20%E5%8C%85%E5%9C%A8%E5%AD%97%E5%B9%95%E4%B8%AD%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我正在写一篇涉及相量的文档,我想使用这篇文章中的 egreg 符号:\bar 符号下方,例如$\underaccent{\bar}{U}$
。
除非我将相量放在标题内,否则它工作得很好。这是一个 MWE:
\documentclass[10pt]{article}
\usepackage{accents}
\usepackage{caption}
\usepackage{tikz}
\begin{document}
\begin{itemize}
\item An ugly phasor: $\underline{U}$.
\item Another, better good-looking phasor: $\underaccent{\bar}{U}$.
\end{itemize}
\begin{figure}[h]\centering
\begin{tikzpicture}
\draw[-latex] (0,0) -- (3,0) node [right] {$\underaccent{\bar}{U}$};
\end{tikzpicture}
\caption{One phasor.}
%\caption{One phasor $\underaccent{\bar}{U}$.} % <-- NOT WORKING
\end{figure}
\begin{center}
\begin{tikzpicture}
\draw[-latex] (0,0) -- (3,0) node [right] {$\underaccent{\bar}{V}$};
\end{tikzpicture}
\captionof{figure}{Another phasor.}
%\captionof{figure}{Another phasor $\underaccent{\bar}{V}$.} % <-- NOT WORKING EITHER
\end{center}
\end{document}
如您所见,我尝试使用 caption 包来解决此问题,但无济于事。我认为日志文件中的相关行可能是以下内容,但我不明白它们的含义:
! Undefined control sequence.
\cc@@accent #1#2->\let \cc@style
=#1\cc@fetch {#2}\mathaccent \cc@code {\ifc...
! Illegal parameter number in definition of \reserved@a.
我猜想,accents 包和 captions 之间存在某种不兼容性,但我在文档中没有看到任何相关信息。有没有更好的方法来解决此问题?
顺便说一下,我正在使用 TeX Live 2020。
答案1
\documentclass[10pt]{article}
\usepackage{accents}
\usepackage{caption}
\usepackage{tikz}
\DeclareRobustCommand{\ubar}[1]{\underaccent{\bar}{#1}}
\begin{document}
\listoffigures
\begin{itemize}
\item An ugly phasor: $\underline{U}$.
\item Another, better good-looking phasor: $\underaccent{\bar}{U}$.
\end{itemize}
\begin{figure}[h]\centering
\begin{tikzpicture}
\draw[-latex] (0,0) -- (3,0) node [right] {$\underaccent{\bar}{U}$};
\end{tikzpicture}
\caption{One phasor $\ubar{U}$.}
\end{figure}
\begin{center}
\begin{tikzpicture}
\draw[-latex] (0,0) -- (3,0) node [right] {$\underaccent{\bar}{V}$};
\end{tikzpicture}
\captionof{figure}{Another phasor $\ubar{V}$.}
\end{center}
\end{document}
产量