首字母缩略词 - 表格 - 使用 \ac 时出现奇怪的间距

首字母缩略词 - 表格 - 使用 \ac 时出现奇怪的间距

我目前正在写一份实验报告,使用了很多缩略词和表格。

我目前所拥有的是这样的:

\documentclass{standalone}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}

\usepackage{booktabs}
\usepackage[allowlitunits]{siunitx}
\DeclareSIUnit{\pH}{pH}
\usepackage{chemmacros}
\sisetup{locale=DE}
\usepackage{acronym}

\begin{document}%
    \begin{tabular}{cp{26em}}
        \toprule%
        Lösung & \multicolumn{1}{c}{Beschreibung} \\%
        \midrule%
        1 & \SI{0.1}{\textsc{n}-Acetatpuffer} \pH \SI{5.0}{} : \SI{70.5}{\milli\liter}
        \SI{1}{\Molar} \ch{NaOH +}\SI{100}{\milli\liter} \SI{1}{\Molar} Essigsäure, auf
        \SI{1}{\liter} mit destilliertem Wasser auffüllen.\\%        
        2 &\acl{tcl}--Lösung \SI{0.38}{\gram\per\liter} in \ac{dmso} bzw.
        \SI{189}{\milli\gram} auf \SI{5}{\milli\liter}\\%    
        3 &\ac{act}--Lösung \SI{37.8}{\milli\gram\per\milli\liter} in
        \SI{1}{\milli\Molar} \ch{HCl} bzw. \SI{189}{\milli\gram} auf
        \SI{5}{\milli\liter}\\%         
        \bottomrule%
    \end{tabular}
\end{document}

在此处输入图片描述

\ac更改为\acl和( )后,\acs它工作正常:

\begin{document}%
    \begin{tabular}{cp{26em}}
        \toprule%
        Lösung & \multicolumn{1}{c}{Beschreibung} \\%
        \midrule%
        1 & \SI{0.1}{\textsc{n}-Acetatpuffer} \pH \SI{5.0}{} : \SI{70.5}{\milli\liter}
        \SI{1}{\Molar} \ch{NaOH +}\SI{100}{\milli\liter} \SI{1}{\Molar} Essigsäure, auf
        \SI{1}{\liter} mit destilliertem Wasser auffüllen.\\%        
        2 &\acl{tcl}--Lösung \SI{0.38}{\gram\per\liter} in \ac{dmso} bzw.
        \SI{189}{\milli\gram} auf \SI{5}{\milli\liter}\\%    
        3 &\acl{act}--Lösung (\acs{act}) \SI{37.8}{\milli\gram\per\milli\liter} in
        \SI{1}{\milli\Molar} \ch{HCl} bzw. \SI{189}{\milli\gram} auf
        \SI{5}{\milli\liter}\\%         
        \bottomrule%
    \end{tabular}
\end{document}

在此处输入图片描述

我找到了一种解决方法,但我仍然想知道是什么导致了这个问题。

我将这个独立文件包含在我的主文档中,因此这些缩写词没有定义不是问题。

答案1

\ac命令未能退出垂直模式(它应该退出,因为它要排版一些东西)。快速修复方法是加载etoolbox并补充

\preto\ac{\leavevmode}

序言。虽然这有效,但必须谨慎使用etoolbox带有命令的修补acronym,因为它们是在suffix软件包可能会导致修补失败。也可以\ac在没有其他软件包的情况下“修补” (正如@egreg 在聊天中提出的):

\expandafter\def\expandafter\ac\expandafter{\expandafter\leavevmode\ac}

这将重新定义\ac为第一个扩展,\ac\leavevmode在前面添加了。

相关内容