表格中的单元格需要使用 Phantom 下划线

表格中的单元格需要使用 Phantom 下划线

下划线需要使用幻像文本(不是单元格宽度)设置选定的单元格,这样我就不想更改列对齐方式了?有什么办法可以实现这一点吗?请忽略我的 \al 定义。请查看 MWE 文件:

\documentclass{book}


\makeatletter

\def\al#1#2{\underline{\phantom{#1}\makebox[0pt][r]{#2}}}

%\def\bl#1#2#3#4{\def\@thirdarg{#1}\ifx\@thirdarg\@empty\underline{\makebox[r][#4]{#2}}\else\underline{\makebox[#3][#4]{#2}}\fi}

\makeatother



\begin{document}




\bigskip\bigskip
\noindent\begin{tabular}{|l|l|l|}
\hline
1000&1000&\al{Sample}{1000}\\
500&500&\al{Sample}{500}\\
10&10&\al{Sample}{10}\\
1&1&\al{Sample}{2}\\
\hline
\end{tabular}

\bigskip\bigskip
\noindent\begin{tabular}{|l|l|l|}
\hline
1000&1000&{1000}\\
500&500&{500}\\
10&10&{10}\\
1&1&{2}\\
\hline
\end{tabular}


\end{document}

在此处输入图片描述

答案1

您可以使用嵌套表格和\hline存档下划线。我使用了左对齐、固定宽度w大批,但p{<wd>}-columns 也可以工作。我添加了\extrarowheigth以避免\hline和单元格内容之间的冲突:

在此处输入图片描述

\documentclass{book}
\usepackage{array}
\setlength{\extrarowheight}{1pt}

\begin{document}

\noindent\begin{tabular}{|l|l|l|}
\hline
1000&1000&\begin{tabular}{@{}wl{0.8cm}@{}}
1000\\\hline
\end{tabular}\\
500&500& \begin{tabular}{@{}wl{0.8cm}@{}}
500\\\hline
\end{tabular}\\
10&10& \begin{tabular}{@{}wl{0.8cm}@{}}
10\\\hline
\end{tabular}\\
1&1& \begin{tabular}{@{}wl{0.8cm}@{}}
2\\\hline
\end{tabular}\\
\hline
\end{tabular}

\end{document}

相关内容