盒子的行为类似于 vbox,但其宽度是其内容的宽度?

盒子的行为类似于 vbox,但其宽度是其内容的宽度?

我需要一个满足以下条件的盒子:

  1. 它可以包含多行(和段落)文本(与 不同\hbox
  2. 比 更长的行将\textwidth拆分到下一行(类似\parbox\vbox不同于\hbox\mbox
  3. 盒子的内容被紧密包围。也就是说,盒子的宽度自动设置为内容的宽度(如\hbox\vbox和不同\parbox)。因为 3. 盒子的宽度实际上应该是\textwidth盒子内容宽度的最小值。高度是盒子内容的高度。

我怎样才能得到这样的行为?

答案1

varwidth来自同名包的环境只需要一个长度,该长度将是允许的框宽度的最大值

\documentclass[a5paper]{article}
\usepackage{varwidth}    
\begin{document}

\fbox{%
\begin{varwidth}{\textwidth}
some text
\end{varwidth}}

\fbox{%
\begin{varwidth}{\textwidth}
some more text to see if there can be a line break at the end
of the line with this nonsense text
\end{varwidth}}

\fbox{%
\begin{varwidth}{0.5\textwidth}
some text
\end{varwidth}}

\fbox{%
\begin{varwidth}{0.5\textwidth}
some more text to see if there can be a line break at the end
of the line with this nonsense text
\end{varwidth}}

\end{document} 

在此处输入图片描述

相关内容