我正在使用 acro 包。我在 longtable 中多次使用一些首字母缩略词,并使用 \acs 定义它们。问题是,当这些首字母缩略词第一次出现在文本中时,始终会显示缩写形式,因此它们永远不会在文本中定义,这与常规表格中的情况相反。我该如何解决这个问题?
谢谢你!
梅威瑟:
\documentclass[b5paper,10pt]{report}
\usepackage{longtable}
\usepackage{tabularx}
\usepackage{acro}
\DeclareAcronym{acro1}{
short = ACRO1,
long = acronym1,
tag = abbrev
}
\DeclareAcronym{acro2}{
short = ACRO2,
long = acronym2,
}
\begin{document}
\begin{table}[h!tbp]
\begin{tabularx}{\linewidth}{cc}
example
& \acs{acro1} \\
\end{tabularx}
\end{table}
First use of acronym in text: \ac{acro1}. Desired behavior!
\begin{longtable}{ll}
example
& \acs{acro2} \\
\end{longtable}
First use of acronym in text: \ac{acro2}. :(
\end{document}
答案1
您需要使用\acs*
里面带星号的版本longtable
。带星号的命令不算作 的使用,acro
因此\ac
外面才能正确显示完整形式。
在表格内部不需要这样做的原因是acro
补丁会浮动,以使其命令位于浮动对象内部,就像它们被加星号一样。