如何在表格的列中插入图像?

如何在表格的列中插入图像?

我想显示我对一些图像的测试。我想将其显示在表格中。因此表格有 3 列。第一列:数字第二列:图像第三列:句子

  \begin{table}[!h]
  \centering
  \caption{Properties} \begin{tabular}{|c|c|c|}
\hline
    1. & \begin{figure}[!h]
    \begin{center}
    \includegraphics[width=3.5cm, height=3.5cm]{EPS_Thesis_Farhat/Plat_sukses/B5IB.eps}
     \end{center}
    \end{figure} & sentence\tabularnewline
    \hline
   \end{tabular}
\label{Properties in Regionprops}
    \end{table}

怎么做??

答案1

一些评论:

  • 这里其实不需要浮动对象(如figure)。并且不允许嵌套浮动环境。

  • 默认情况下,如果使用\includegraphics,基线位于图像的底部;为了获得所需的垂直对齐,我使用了adjustbox包及其\adjustbox命令以及valign=c选项。

  • 我用的是booktabs包以获得更好看的表格;特别是,不鼓励使用垂直规则(当然,这是可选的)。

  • 第一列的编号是借助计数器自动生成的。

  • 如果第三列中的文本很长,也许你需要一个

    >{\centering\arraybackslash}p{<length>} 
    

    列,而不仅仅是一c列。

  • 请不要将[!h]其用作浮动对象的放置说明符;这种限制太严格,可能会导致灾难。请使用限制较少的选项,或者最好根本不使用选项。

代码:

\documentclass{article}
\usepackage{array}
\usepackage{booktabs}
\usepackage{adjustbox}
\usepackage{graphicx}

\newcounter{myrow}

\begin{document} 

\begin{table}
\centering
\caption{Properties} 
\label{Properties in Regionprops}
\begin{tabular}{>{\stepcounter{myrow}\themyrow.}ccc}
\toprule
& 
\adjustbox{valign=c}{\includegraphics[width=3.5cm, height=3.5cm]{example-image-a}}
& 
sentence \\[1.57cm]
\midrule
& 
\adjustbox{valign=c}{\includegraphics[width=3.5cm, height=3.5cm]{example-image-b}}
& 
sentence \\[1.57cm]
\midrule
& 
\adjustbox{valign=c}{\includegraphics[width=3.5cm, height=3.5cm]{example-image-c}}
& 
sentence \\[1.57cm]
\bottomrule
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

如果由于某种原因adjustbox无法使用,您可以选择\raisebox

\documentclass{article}
\usepackage{array}
\usepackage{booktabs}
\usepackage{graphicx}

\newcounter{myrow}
\newcommand\RaiseImage[2][scale=1]{%
  \raisebox{-0.5\totalheight}{\includegraphics[#1]{#2}}}

\begin{document} 

\begin{table}
\centering
\caption{Properties} 
\label{Properties in Regionprops}
\begin{tabular}{>{\stepcounter{myrow}\themyrow.}ccc}
\toprule
& 
\RaiseImage[width=3.5cm, height=3.5cm]{example-image-a}
& 
sentence \\[1.57cm]
\midrule
& 
\RaiseImage[width=3.5cm, height=3.5cm]{example-image-b}
& 
sentence \\[1.57cm]
\midrule
& 
\RaiseImage[width=3.5cm, height=3.5cm]{example-image-c}
& 
sentence \\[1.57cm]
\bottomrule
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

在评论中,有人请求使用具有原始垂直规则的表格:

\documentclass{article}
\usepackage{array}
\usepackage{graphicx}

\newcounter{myrow}
\newcommand\RaiseImage[2][scale=1]{%
  \raisebox{-0.5\totalheight}{\includegraphics[#1]{#2}}}

\begin{document} 

\begin{table}
\centering
\caption{Properties} 
\label{Properties in Regionprops}
\begin{tabular}{|>{\stepcounter{myrow}\themyrow.}c|c|c|}
\hline
& 
\RaiseImage[width=3.5cm, height=3.5cm]{example-image-a}
& 
sentence \\
\hline
& 
\RaiseImage[width=3.5cm, height=3.5cm]{example-image-b}
& 
sentence \\
\hline
& 
\RaiseImage[width=3.5cm, height=3.5cm]{example-image-c}
& 
sentence \\
\hline
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

答案2

由于您对获取图例或其他内容不感兴趣,因此您应该首先尝试删除环境figure。环境center也是不需要的,因为您已经将表格元素(c表格的属性)居中。此外,我不确定您是否希望(或可以)将此类环境嵌入到您的table环境中

\begin{table}[!h]
  \centering
  \begin{tabular}{|c|c|c|}
    \hline
    1. &
    \includegraphics[width=3.5cm, height=3.5cm]{EPS_Thesis_Farhat/Plat_sukses/B5IB.eps} & 
    sentence\tabularnewline
    \hline
  \end{tabular}
  \caption{Properties} 
  \label{Properties in Regionprops}
\end{table}

相关内容