我正在尝试制作纸质表格。我想画一条水平线供人们书写。我希望那条线位于基线下方。我发现TUGboat 制作表格定义了一个\xfill
在段落中可以正常工作的命令,但我无法在tabu
环境中使用它。如何\hrulefill
在环境中使用相当于基线以下的位置tabu
?
梅威瑟:
\documentclass{article}
% From https://www.tug.org/tugboat/tb24-2/tb77wilson.pdf
\newcommand*{\xfill}[1][0pt]{%
\cleaders
\hbox to 1pt{\hss
\raisebox{#1}{\rule{1.2pt}{0.4pt}}%
\hss}\hfill}
\usepackage{tabu}
\begin{document}
This works: \xfill[-0.5ex]
\begin{tabu}{@{}X@{}}
Rule is too high: \hrulefill \\
Rule is not visible: \xfill[-0.5ex] \\
\end{tabu}
\end{document}
渲染结果:
我正在使用 MacTeX 2014,使用 LuaLaTeX 进行渲染。
答案1
您可以使用xhfill
该包提供扩展命令,\hrulefill
允许您控制属性(颜色、厚度、高度/深度):
\documentclass{article}
\usepackage{xhfill}
% From https://www.tug.org/tugboat/tb24-2/tb77wilson.pdf
\newcommand*{\xfill}[1][0pt]{%
\cleaders
\hbox to 1pt{\hss
\raisebox{#1}{\rule{1.2pt}{0.4pt}}%
\hss}\hfill}
\usepackage{tabu}
\begin{document}
This works: \xfill[-0.5ex]
\begin{tabu}{@{}X@{}}
Rule is too high: \hrulefill \\
Rule is visible: \xrfill[-0.5ex]{0.4pt} \\
\end{tabu}
\end{document}