删除表格第一个行后的空格

删除表格第一个行后的空格

我该如何删除右侧表格(以下代码中的第二个表格)第一个水平线后的空格?如果这不可能,我必须将什么样的值传递给adjustbox的trim参数(例如{valign=T, trim=0 \parskip}或类似的东西)才能摆脱这个空格?请注意,我不关心水平线。它只是在这里向您展示我想删除哪种类型的空格。

谢谢你!

\documentclass{scrartcl}

\usepackage{adjustbox}

\begin{document}
\adjustbox{valign=T}{\begin{tabular}[t]{@{}l}\hline
\Huge X1\\\\
\tiny X2
\end{tabular}}
\adjustbox{valign=T}{\begin{tabular}[t]{r@{}}\hline
X1\\\\X2
\end{tabular}}
\end{document}

答案1

一种解决方法(您可以删除\adjustboxes):

\documentclass{scrartcl}

\usepackage{adjustbox}

\begin{document}
\adjustbox{valign=T}{\begin{tabular}[t]{@{}l}
\hline
\Huge X1\\\\
\tiny X2
\end{tabular}}%
\adjustbox{valign=T}{\begin{tabular}[t]{r@{}}
\hline
\\[-3.31ex]X1\\\\X2
\end{tabular}}
\end{document} 

在此处输入图片描述

答案2

\adjustbox这不是一个完整的解决方案,但有一些(希望有帮助的)关于本案中指令缺乏行动的评论和一些解决方法的建议。

在您提供的示例代码中,重要的是要意识到左侧表格中“巨大”X 的上边缘恰好接触到它\hline纯属巧合; 这是不是是由指令的存在引起的\adjustbox{valign=T}{...}。您可以通过删除指令来亲自检查这一点\adjustbox

那么,如何才能使(正常大小的)字母“X”的上边缘与水平线对齐呢?我无法想出一个优雅的解决方案,但只能提出两个强力解决方法的建议:(a)“TeX 原始命令”\raise和(b)软件包提供的\hbox命令。材料应升高多少,当然在很大程度上取决于材料的大小。对于文档中自然字体大小为 的“X1”的情况,似乎是正确的量。\raiseboxgraphicx11pt2pt

顺便说一句,移动第一行tabular不会影响第二行的基线。如果您需要垂直移动整个tabular环境,则应将其包含在\raise...\hbox{...}指令中。

在此处输入图片描述

\documentclass[11pt]{scrartcl}
\usepackage{graphicx} % provides \raisebox macro
\begin{document}
% 1st tabular
\begin{tabular}[t]{@{}l}
  \hline
   {\Huge X1}\\ X2
\end{tabular}
% 2nd tabular
\begin{tabular}[t]{r@{}}
  \hline
  \raise2pt\hbox{X1}\\ X2 % \raise and \hbox are "primitive" commands
\end{tabular}
% 3rd tabular
\begin{tabular}[t]{r@{}}
  \hline
  \raisebox{2pt}{X1}\\ X2
\end{tabular}
\end{document}

相关内容