我希望在表格单元格中插入一个(varwidth)框,并且希望该框的大小在宽度上限制为该列原本具有的自动调整大小,并且我插入到框中的任何文本都只在该宽度处换行。
我最初希望能够做类似的事情
\begin{tabular}{ccc}
Column 1 & Column 2 & Column 3\tabularnewline
stuff &
\begin{varwidth}{\columnwidth}
This text should be wrapped to the width of the column
but instead it makes the entire column extremely wide
\end{varwidth}
& stuff\tabularnewline
some other stuff & some other stuff & some other stuff\tabularnewline
\end{tabular}
将我的varwidth
小页面放在我想要插入文本的单元格中,但 \columnwidth 似乎仅反映与页面最终布局相关的列宽,而不是单个表格列的首选宽度。更糟糕的是,此示例进一步导致表格溢出右边距。
如果我的要求不清楚,我提前道歉,但如果任何人有任何具体问题,我会尽快解决,并在适当的情况下澄清这个问题的文字。
答案1
以下内容并不是真正自动的,因为您必须手动确定最宽的条目,但可能会给您提供接近您描述的内容:
\documentclass{article}
\usepackage{calc}
\usepackage{ragged2e}
\usepackage{array}
\newcolumntype{C}[1]{>{\Centering\arraybackslash\hspace{0pt}}p{#1}}
\begin{document}
\begin{tabular}{cC{\widthof{some other stuff}}c}
Column 1 & Column 2 & Column 3\tabularnewline
stuff &
This text should be wrapped to the width of the column
but instead it makes the entire column extremely wide
& stuff\tabularnewline
some other stuff & some other stuff & some other stuff\tabularnewline
\end{tabular}
\end{document}