表格单元格内的内部表格排列困难

表格单元格内的内部表格排列困难

我需要创建一个有 1 行 2 列的表格,其中第一个单元格有一个内部表格,第二个单元格是一张照片,我指定宽度并让系统处理高度。我的困难是我无法让内部表格在单元格顶部对齐。为了说明,以下是我想要的结果:

在此处输入图片描述

这就是我得到的

在此处输入图片描述

还,这是示例中使用的原始图片的链接

我尝试了各种方法,从使用\parbox\vspace控制,但经过两天的阅读手册、谷歌搜索和实验后,我承认失败并现在寻求帮助。

这是产生格式错误的表格的代码。

\documentclass[twoside]{article}
\usepackage{graphicx}
\usepackage{calc}

\begin{document}
\noindent
\begin{tabular} {
    |@{}p{0.5\linewidth}@{}|
    p{0.5\linewidth-2\tabcolsep}|
}
    \hline
    \begin{tabular} {
        |p{0.5\linewidth-2\tabcolsep}|
        p{0.5\linewidth-2\tabcolsep}|
    }
        Serial Number & K77C 15229\\ \hline
        Reading & 18901 \\ \hline
        Date & 08/10/2012 \\ \hline
    \end{tabular}
    & 
    \includegraphics[width=\linewidth]{pics/DSC_3543.jpg} \\
    \hline
\end{tabular}
\end{document}

如果我\vspace{0mm}在前面加上\includgraphics,内部表格就会如预期那样出现在顶部,但照片上方会出现额外的空白。输入负数(例如\vspace{-6mm})会产生所需的效果,但如果内部表格有 4 或 5 行,则数字需要更改。由于需要生成数百行,因此手动调整每个行是不切实际的。

我感觉好像我遗漏了一些简单的东西。感谢任何能提供帮助的人!

答案1

adjustbox是你的朋友。此外,内部表格应该接收[t]放置选项:

\documentclass[twoside]{article}
\usepackage{graphicx}
\usepackage{calc,adjustbox}

\begin{document}
\noindent
\begin{tabular} {
    |@{}p{0.5\linewidth}@{}|
    @{}p{0.5\linewidth-\arrayrulewidth}@{}|
  }
  \hline
  \begin{tabular}[t] {
      p{0.5\linewidth-2\tabcolsep}|
      p{0.5\linewidth-2\tabcolsep}
  }
    Serial Number & K77C 15229\\ \hline
      Reading & 18901 \\ \hline
      Date & 08/10/2012 \\ \hline
  \end{tabular}
  &
  \adjustbox{valign=t}{\includegraphics[width=\linewidth]{DSC_3543.jpg}} \\
  \hline
\end{tabular}             
\end{document}

我还修复了一些计算,这样您就不会在图像的左侧和右侧填充。

在此处输入图片描述

相关内容