长表中首次使用的首字母缩略词存在问题

长表中首次使用的首字母缩略词存在问题

我正在使用 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补丁会浮动,以使其命令位于浮动对象内部,就像它们被加星号一样。

相关内容