将 arydshln 和 longtable-with-fake-shadowbox 结合起来?

将 arydshln 和 longtable-with-fake-shadowbox 结合起来?

我曾尝试使用David Carlisle 提供的解决方案是将\shadowbox类似阴影添加到long table在我的文档中遇到了一个奇怪的问题:

表格边框线消失了

经过一番摸索,我把问题缩小到了软件包上arydshln。我甚至不必在有问题的表格中使用该软件包——只要我加载它,表格就会扭曲。从软件包文档中,我得到的印象是和之间存在相当多的不兼容历史arydshln——longtable我刚刚找到了下一个吗?有没有解决方法——或者替代方案arydshln

梅威瑟:

\documentclass[10pt]{scrartcl}
\usepackage{longtable,multirow,array}
% \usepackage{arydshln} Enabling this line breaks the table, although the package is not used at all...

\def\lsdw{\smash{\lower5pt\rlap{{\vrule width 4pt height\dimexpr\ht\strutbox+2pt\relax depth \dp\strutbox}}}}

\begin{document}

\begin{longtable}{|l!{\vline\lsdw}}
\hline 
X \\
\hline
\endhead
\hline
\multispan{1}\kern4pt{\leaders \vrule height 4pt\hfill}\mbox{}\kern-4pt
\endfoot    
Y \\\pagebreak
\hline
Z \\
\hline
\end{longtable}

\end{document}

答案1

在此处输入图片描述

该包重新定义了|,但!{\vline}与原始定义相同,并且仍然有效。此外,由于您在大多数地方使用了 4pt,但在一处使用了 5pt,因此阴影中有一个缺口:

\documentclass[10pt]{scrartcl}
\usepackage{longtable,multirow,array}


 \usepackage{arydshln}% Enabling this line breaks the table, although the package is not used at all...




\def\lsdw{\smash{\lower4pt\rlap{{\vrule width 4pt height\dimexpr\ht\strutbox+2pt\relax depth \dp\strutbox}}}}

\begin{document}

\begin{longtable}{!{\vline}l!{\vline\lsdw}}
\hline 
X \\
\hline
\endhead
\hline
\multispan{1}\kern4pt{\leaders \vrule height 4pt\hfill}\mbox{}\kern-4pt
\endfoot    
Y \\\pagebreak
\hline
Z \\
\hline
\end{longtable}


\end{document}

相关内容