乳胶表中的文本和图像换行

乳胶表中的文本和图像换行

我试图在 latex 的表格中插入带标题的图片。我读过一些关于使用 \raisebox 在表格中添加图片的帖子。我尝试了类似

\begin{table}[ht]
\begin{center}
\begin{tabular}{|c|c|c|c|}
\hline
 Query Structure & The most similar structure & The second most similar structure & The    third most similar structure \\
\hline
\raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_B3LYP_631Gd}} &     \raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_B3LYP_631Gd}} & \raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_G3MP2B3}} &\raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_G3B3}}\\
\hline
\end{tabular}
\end{center}
\end{table}

成功了。但我想要这些带有标题的图片。起初,我尝试直接在 raisebox 中添加 caption{},如下所示:

\raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_B3LYP_631Gd} \caption{structure GS\_Ade\_PathwayA\_I1A\_B3LYP\_631Gd}}     

我像这样写 latex 时收到错误消息。所以我尝试将标题放在下一行,中间没有 \hline 来解决这个问题。

\begin{table}[ht]
\label{table2}
\begin{center} %Note American spelling
\begin{tabular}{| p{0.25\textwidth} | p{0.25\textwidth} | p{0.25\textwidth} |   p{0.25\textwidth} |}
\hline
Query Structure & The most similar structure & The second most similar structure & The    third most similar structure \\
\hline
\raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_B3LYP_631Gd}} & raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_B3LYP_631Gd}} & \raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_G3MP2B3}} &\raisebox{-.5\height}{\includegraphics[scale=0.2]{GS_Ade_PathwayA_I1A_G3B3}} \\
GS\_Ade\_PathwayA\_I1A\_B3LYP\_631Gd.out1.ar &GS\_Ade\_PathwayA\_I1A\_B3LYP\_631Gd.out1.ar &GS\_Ade\_PathwayA\_I1A\_G3MP2B3.out1.ar &GS\_Ade\_PathwayA\_I1A\_G3B3.out1.ar \\
\hline
\caption{Results Table}
\end{tabular}
\end{center}
\end{table}

通过上述操作,我得到了两个结果问题。

  1. 图片在每个单元格中都不居中。虽然我设置了边框的高度,但是图片仍然紧贴在单元格上边缘。
  2. 我已将每列的宽度设置为 \textwidth 宽度的 1/4。它适用于标题中的文本。一些较长的文本(例如“第二相似的结构”)被分成两行。但是,对于图片下的文本,它们都重叠了。我认为 Latex 将其视为一个完整的单词,因此它没有分成多行。

有人能建议如何解决这些问题吗?

谢谢。

答案1

此解决方案仅将未编号的副标题放在图形下方,仅使用单独的图形行。如果与图形在同一行上没有文本,则\raisebox不需要方法。由于您没有提供最小工作示例 (MWE),我假设图形本身位于一行上。我省略了\hline标题、图形和副标题之间的内容,以便更好地将它们分组。通过使用p列,文本会自动换行。

正如 David 指出的那样,必须留出列填充分隔的空间,因此在这种情况下,我只设置了每列的宽度0.21\textwidth以避免列宽过宽。

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{url}
\usepackage{caption}
\begin{document}
\begin{table}[ht]
\begin{center}
\begin{tabular}{|p{.21\textwidth}|p{.21\textwidth}|p{.21\textwidth}|p{.21\textwidth}|}
\hline
 Query Structure & The most similar structure & 
The second most similar structure & The    third most similar structure \\
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_B3LYP_631Gd} &
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_B3LYP_631Gd} & 
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_G3MP2B3} &
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_G3B3}\\
\scriptsize \url{GS_Ade_PathwayA_I1A_B3LYP_631Gd.out1.ar}
& \scriptsize next caption
& \scriptsize third caption
& \scriptsize last caption\\
\hline
\end{tabular}
\end{center}
\end{table}
\end{document}

在此处输入图片描述


为了回答 OP 的后续问题,即如何在\hline和随后的一行\includegraphics图像之间添加间隙,而这些图像原本与 齐平\hline,有很多方法。我采用的是使用\addvbuffer[top_gap bottom_gap]{...}verbatimbox包中的宏。只需将其应用于行中最高的图像即可。在这里,我重新呈现了\hline添加了 s 的 MWE,并将\addvbuffer放在了适当的位置。

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{url}
\usepackage{caption}
\usepackage{verbatimbox}
\begin{document}
\begin{table}[ht]
\begin{center}
\begin{tabular}{|p{.21\textwidth}|p{.21\textwidth}|p{.21\textwidth}|p{.21\textwidth}|}
\hline
Query Structure & The most similar structure & 
The second most similar structure & The    third most similar structure \\
\hline
\addvbuffer[4pt 0pt]{\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_B3LYP_631Gd}} &
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_B3LYP_631Gd} &
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_G3MP2B3} &
\includegraphics[width=.21\textwidth]{GS_Ade_PathwayA_I1A_G3B3}\\
\hline
\scriptsize \url{GS_Ade_PathwayA_I1A_B3LYP_631Gd.out1.ar}
& \scriptsize next caption
& \scriptsize third caption
& \scriptsize last caption\\
\hline
\end{tabular}
\end{center}
\end{table}
\end{document}

在此处输入图片描述

相关内容