我想要文本的宽度小于页面宽度,跨多个页面。通常,您会将文本放入 ( \par
)中box
以设置其宽度,但这些框不能跨页面拆分,因此在这里我无法使用它。
\parbox
我尝试查看(更准确地说)的内部定义\@iiiparbox
,但我无法理解它——尽管它看起来无法适应分页。
背景:
我想这样做的原因是,我有一个图形标题(居中且具有给定的文本宽度),但对于页面来说太长,因此被截断了。关于如何解决这个问题有很多问题(例如将图表描述分成两页),但没有一个能真正解决这个问题。
现在我只是选择不使用float
,而是使用以下内容:
\begin{center}
\includegraphics
\captionof{figure}{looooong caption}
\end{center}
…但这总是会将图形标题完整地放在下一页上,而不是将其拆分。(局部)重新定义\@iiiparbox
可以顺利地将图形标题拆分到各个页面,但图形标题会占据整个页面宽度,这是不受欢迎的。
答案1
如果标题超过一行,则\caption
in和其他标准类的默认定义不会被框起来。要更改有效行宽,您应该使用(或具有类似定义的环境),即article
quote
\newenvironment{quote}
{\list{}{\rightmargin\leftmargin}%
\item\relax}
{\endlist}
它只接受默认的增加\leftmargin
并进行\rightmargin
相同的操作。您可以在自定义环境的定义中将两个边距明确设置为任何适当的值,以包裹标题
\begin{center}
\includegraphics
\nopagebreak
\begin{quote}
\captionof{figure}{looooong caption}
\end{quote}
\end{center}