问题
我目前正在写一个带有longtable
环境的表格,并且想要在单元格内插入图片和垂直居中对齐但是,我的尝试结果如下:
所以我想做的事情如下:
- 如果男孩比牢房高,则在保持方位的同时降低他的身高以适应牢房。
- 如果男孩比牢房胖,则在保持外形不变的情况下将他的宽度减小到牢房的宽度。
--
尝试
上表是使用以下代码生成的:
\documentclass[fontsize=12bp]{article}
\usepackage[table,xcdraw]{xcolor}
\usepackage{multirow}
\usepackage{lipsum}
\usepackage{longtable}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{float}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\begin{document}
\begin{longtable}{|ccc|}
\hline
\rowcolor[HTML]{C0C0C0}
\multicolumn{1}{c}{\large \textbf{Column1} } & \multicolumn{1}{c}{\large \textbf{Column2}} & \multicolumn{1}{c}{\large \textbf{Column3}} \\ \hline \endhead
\multicolumn{1}{|c|}{} & \multicolumn{1}{l|}{\begin{minipage}{0.5\textwidth} \medskip \scriptsize \lipsum[4] \medskip \end{minipage}} & \\ \cline{2-2}
\multicolumn{1}{|c|}{\multirow{-4}{*}{\Large Name1}} &
\multicolumn{1}{l|}{\begin{minipage}{0.5\textwidth} \medskip \scriptsize \lipsum[2] \medskip \end{minipage}} &
\multirow{-10}{*}{\begin{minipage}{0.4\textwidth}
\begin{figure}[H]{\center \includegraphics[keepaspectratio=true, width=\linewidth]{figures/human.png}} \end{figure} \end{minipage}} \\ \hline
\end{longtable}
\end{document}
问题
我该如何将这个男孩关进牢房,同时又不影响他的容貌?任何帮助我都会感激不尽。
答案1
像这样吗?
- 浮动图形不能被包围在
minipage
或类似的盒子环境中 - 图像,包括
includegraphics[width=<length>]{<image-file>}
保持自己的纵横比 - 而不是
minipage
在单元格中使用,最好定义列类型p{<width>}
- 我没有更改列标题的代码
- 在
multirow
最后一列中您可以使用最近的multirow
包中定义的选项:{=}
\documentclass[fontsize=12bp]{article}
\usepackage{geometry}
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage[table,xcdraw]{xcolor}
\usepackage{array, multirow, longtable}
\usepackage{lipsum}
\usepackage{graphicx}
\begin{document}
\begin{longtable}{|c
|>{\scriptsize}p{0.4\textwidth}
|p{0.5\textwidth}|}
\hline
\rowcolor[HTML]{C0C0C0}
\multicolumn{1}{c}{\large \textbf{Column1} }
& \multicolumn{1}{c}{\large \textbf{Column2}}
& \multicolumn{1}{c}{\large \textbf{Column3}} \\
\hline
\endhead
\multicolumn{1}{|c|}{}
& \lipsum[4]
& \\
\cline{2-2}
\multirow{-1}{*}{\Large Name1}
& \scriptsize \lipsum[2]
& \multirow{-6.2}{=}{\includegraphics[width=\linewidth]{example-image-duck}} \\
\hline
\end{longtable}
\end{document}