表格环境中的 \hfill 无法正确刷新

表格环境中的 \hfill 无法正确刷新

当我\hfill使用该包将一个放置在表格行中并为其着色时colortbl,着色并没有延伸到我期望的行尾。

例如代码:

\documentclass{article}
\usepackage{colortbl}
\usepackage{xcolor}

\begin{document}
\begin{tabular}{c}
  \rowcolor{black}\textcolor{white}{Sample Text}\\
  \rowcolor{black}\hfill\textcolor{white}{More Text}\\
\end{tabular}
\end{document}

产生以下输出:

在此处输入图片描述

我希望它产生如下结果:

在此处输入图片描述

我猜问题在于使用 以\hfill某种方式改变了线的长度。是这样吗?如果不是,为什么当我使用 时颜色的长度会发生变化\hfill

答案1

您可以使用\hspace{0pt plus 1filll}来覆盖\hfill单元格末尾的 ,但这会使颜色混乱,如示例所示。 最好使用 来说明右对齐\multicolumn

\documentclass{article}
\usepackage{colortbl}
\usepackage{xcolor}

\newcommand\hfilll{\hspace{0pt plus 1filll}}

\begin{document}
\begin{tabular}{c}
Sample Text\\
\hfilll More Text\\
\rowcolor{black}\textcolor{white}{Sample Text}\\
\rowcolor{black}\hfilll\textcolor{white}{More Text}\\
\rowcolor{black}\textcolor{white}{Sample Text}\\
\rowcolor{black}\multicolumn{1}{r}{\textcolor{white}{More Text}}\\
\end{tabular}
\end{document}

请记住,相反的情况需要胶水(一个无限,另一个零),因为单元格末端的胶水被去除(通过\unskip)。

在此处输入图片描述

相关内容