如何制作带有居中图像的表格?

如何制作带有居中图像的表格?

第 6 页PDF 中有一个表格,其右列中有居中图片。

在此处输入图片描述

有人知道如何制作这样的表格吗?

我正在使用 pdflatex。

答案1

您需要更改图像的基线。通常将其居中到小写字符的高度(1ex)。这可以使用宏\raisebox或使用包valign=m的键来完成adjustbox

也可以看看 如何将图片对齐表格的左上角?标题页左侧浮动图片它们是相似的。

这里是我的代码,它还显示了一些其他元素,如粗体数学和堆叠:

\documentclass{article}

\usepackage{adjustbox}
\usepackage{booktabs}
\usepackage{amsmath}

\providecommand{\textsubscript}[1]{%
    \mbox{$_\text{#1}$}%
}

\newcommand{\mystack}[1]{%
   \mbox{$
    \vcenter{%
        \hbox{\shortstack{#1}}%
    }%
    \mathsurround=0pt
   $}
}


\begin{document}

\begin{tabular}{ccccc}
    \toprule
    \bfseries Scalar mode & 
    \bfseries Vector mode & 
    \bfseries Degeneracy & 
    $\mathbf{n_{\text{\bfseries eff}}}$ & 
    \bfseries Near field ($\mathbf{S_Z}$) \\
    \midrule
    LP\textsubscript{01} &
    HP\textsubscript{11} &
    2 & 1.44398 & \adjustimage{height=2cm,valign=m}{image1} \\
    LP\textsubscript{11} &
    \mystack{%
        HP\textsubscript{11} \\
        TE\textsubscript{01} \\
        TM\textsubscript{01}
    } &
    4 & 1.44381 & \adjustimage{height=2cm,valign=m}{image2} \\
    .. \\
    \midrule
    \multicolumn{5}{c}{\bfseries Originally cladding modes} \\
    \midrule
    .. \\
    \bottomrule
    \multicolumn{5}{l}{%
        *The LP\textsubscript{31} is four-fold ...
    }\\
\end{tabular}

\end{document}

结果

答案2

有多种方法可以将材料垂直居中。LaTeX3'棺材'概念使得这很容易实现:

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{xcoffins}
\NewCoffin\tablecoffin
\NewDocumentCommand\Vcentre{m}
  {%
    \SetHorizontalCoffin\tablecoffin{#1}%
    \TypesetCoffin\tablecoffin[l,vc]%
  }
\begin{document}
\begin{tabular}{ccc}
 \Vcentre{A} & \Vcentre{B} & 
   \Vcentre{\includegraphics[width = 1 cm, height = 1 cm]{demo}}
\end{tabular}
\end{document}

这里的想法是,‘棺材’的垂直中心与当前基线对齐,而水平放置在当前插入点。(我使用了包demo的选项graphicx,以便某物出现:黑色斑点。对于真实文档,不需要这样做。

正如马克所说,遵守规则booktabs才是王道。

答案3

使用该包,您将获得与表格本身非常接近的输出booktabs。至于图像,只需简单\includegraphics操作即可。

\usepackage[demo]{graphicx}
\usepackage{booktabs}
\usepackage{array}

\begin{document}
\begin{tabular}{m{1.5cm}m{1.5cm}m{1.5cm}}
\toprule
Header 1 & Header 2 & Header 3\\
\midrule
One & Two & \includegraphics[width=1cm, height=1cm]{fig1}\\
Three & Four & \includegraphics[width=1cm, height=1cm]{fig2}\\
\bottomrule
\end{tabular}
\end{document}

产生这个:

在此处输入图片描述

相关内容