更新

更新

Column B我和一位同事正在开发文档模板,其中某些类型的表格是重复元素。这些表格的内容深度各不相同,通常包含MWE中的内容。

由于这些元素是重复的,因此我们为它们设置了一致的宽度。但是,有些元素在宽度上非常短,无法拉伸以满足最小宽度。MWE 显示:

\documentclass{article}
\usepackage[margin=0.25in]{geometry}
\usepackage{mwe}
\usepackage{blindtext}
\usepackage{booktabs}
\usepackage{tabulary}

\begin{document}

\begin{table}[h]
\centering
\begin{tabulary}{0.66\textwidth}{lL}
\toprule
\multicolumn{2}{l}{Example A} \\
\midrule
\multicolumn{2}{c}{\includegraphics[scale=0.5]{example-image-a}} \\
\midrule
Column A & Column B \\
\midrule
Label I & A very little bit of text.\\
\bottomrule
\end{tabulary}
\caption{Example A}
\end{table}

\begin{table}[h]
\centering
\begin{tabulary}{0.66\textwidth}{lL}
\toprule
\multicolumn{2}{l}{Example B} \\
\midrule
\multicolumn{2}{c}{\includegraphics[scale=0.5]{example-image-b}} \\
\midrule
Column A & Column B \\
\midrule
Label I & \blindtext\\
\bottomrule
\end{tabulary}
\caption{Example B}
\end{table}

\end{document}

添加以下 hack 来Example A强制所需的宽度,但似乎是一个糟糕的解决方案:Label I & A very little bit of text.\hspace*{50em}\\

当然有更好的方法来做到这一点?

更新

关于类似情况的这个问题提供了补丁和一些有关 的有用历史记录tabulary

然而,这里涉及的一些东西(可能是图像?)破坏了那里建议的补丁,导致算术溢出。tabularx在表格未满的情况下使用手动干预是合理的,但这不是支持自动化的场景。

有没有办法通过调用来为补丁提供算术\includegraphics,或者这是否只是推得太远进入不合理的领域?

答案1

tabularx可以修复整个表格的宽度,并且X列可以独立于其内容调整其大小。

\documentclass{article}
\usepackage[margin=0.25in]{geometry}
\usepackage{mwe}
\usepackage{blindtext}
\usepackage{booktabs}
\usepackage{tabulary}
\usepackage{tabularx}
\newcolumntype{Y}{>{\raggedright\arraybackslash}X}

\begin{document}

%\blindtext

\begin{table}[h]
\centering
\begin{tabularx}{.66\textwidth}{lY}
\toprule
\multicolumn{2}{l}{Example A} \\
\midrule
\multicolumn{2}{c}{\includegraphics[scale=0.5]{example-image-a}} \\
\midrule
Column A & Column B \\
\midrule
Label I & A very little bit of text\\
\bottomrule
\end{tabularx}
\caption{Example A}
\end{table}

\begin{table}[h]
\centering
\begin{tabulary}{0.66\textwidth}{lL}
\toprule
\multicolumn{2}{l}{Example B} \\
\midrule
\multicolumn{2}{c}{\includegraphics[scale=0.5]{example-image-b}} \\
\midrule
Column A & Column B \\
\midrule
Label I & \blindtext\\
\bottomrule
\end{tabulary}
\caption{Example B}
\end{table}

\end{document}

在此处输入图片描述

相关内容