对齐环境中 \hline 和 arydshln 之间存在冲突?

对齐环境中 \hline 和 arydshln 之间存在冲突?

我正在使用以下代码:

\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
% \usepackage{arydshln} %code doesn't compile anymore with this package

\begin{document}    
 \begin{tikzpicture}
 \node at (0,0){$\begin{aligned}
                  & A \to B\\
                  & A \\\hline  
                  & B
                 \end{aligned}$};
 \end{tikzpicture}  
\end{document}

产生这个(实际公式有点长,但我不认为这很重要):

在此处输入图片描述

问题是,在文档的其他部分,我需要使用包\hdashline中的宏,但当放置在环境中时,arydshln包似乎与宏发生冲突。\hlinealigned

我尝试\hline\cline和替换\hhline,但都产生了类似这样的结果:

在此处输入图片描述

水平线周围有太多空白。

有没有办法在加载时像环境\hline中一样出现水平线?假设它在 TikZ 节点内工作,也可以将环境更改为其他环境。alignedarydshln

答案1

aligned环境不是基于tabulararray,因此\hline和类似的命令不能保证有效;对于 提供的扩展行来说,这似乎绝对正确arydshln

使用array

\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{arydshln}

\begin{document}
\begin{tikzpicture}
\node at (0,0)
  {$\begin{array}{@{}l@{}}
    A \to B\\
    A \\
    \hdashline
    B
    \end{array}$
  };
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容