![对齐环境中 \hline 和 arydshln 之间存在冲突?](https://linux22.com/image/267413/%E5%AF%B9%E9%BD%90%E7%8E%AF%E5%A2%83%E4%B8%AD%20%5Chline%20%E5%92%8C%20arydshln%20%E4%B9%8B%E9%97%B4%E5%AD%98%E5%9C%A8%E5%86%B2%E7%AA%81%EF%BC%9F.png)
我正在使用以下代码:
\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
包似乎与宏发生冲突。\hline
aligned
我尝试\hline
用\cline
和替换\hhline
,但都产生了类似这样的结果:
水平线周围有太多空白。
有没有办法在加载时像环境\hline
中一样出现水平线?假设它在 TikZ 节点内工作,也可以将环境更改为其他环境。aligned
arydshln
答案1
该aligned
环境不是基于tabular
或array
,因此\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}