wrapfigure 问题:文本覆盖图形

wrapfigure 问题:文本覆盖图形

我是一个相对较新的 LaTeX 用户,所以请耐心等待。我用它wrapfigure来展示拨款申请中的图表(阅读:空间非常宝贵)。突然,我的一个图表被展示出来在下面文本。我做了很多调试,包括用另一个图形文件替换该文件(仍然有问题),但将原始图形放入其他类似代码中会用不同的代码重现该问题。将文件从 PDF 更改为 JPG 没有帮助。

无论如何,我已经花了几个小时来解决这个问题,任何帮助都将不胜感激!我已经发布了相关代码。

图像

\begin{wrapfigure}{r}{0.3\textwidth}

\begin{center}

\vspace{-38pt}

\includegraphics[width=0.3\textwidth]{infantpilotresults-cropped.pdf}

\vspace{-27pt}

\caption{\emph{Six month-olds' looking to unexpected visual omissions.}}

\vspace{-15pt}

\label{figure:prelim1results} 

\end{center}

\end{wrapfigure}

答案1

在对原始问题的评论之后,很明显问题是由分页符引起的。如果分页符(即使是非显式的分页符)出现在应出现包装图的位置,则可能会出现问题。软件包文档wrapfig明确提到了这一点:

应将环境放置在不会超出分页符的位置。

wrapfigure环境移到另一个位置可以解决问题。

顺便说一句,使用center命令可能比使用环境更好\centering;此外,也许您可​​能需要重新考虑命令的使用\vspace

答案2

我发现,如果 wrapfigure 旁边的文本开始一个新段落,也会出现问题。您可以修复此问题,方法是在该段落分隔符处更改

end of new paragraph.

Start of new paragraph ...

end of new paragraph.\hfill\break\indent Start of new paragraph ...

它看上去就像一个新段落,但乳胶不会认为它已经开始了另一个段落,并且 wrapfigure 会神奇地再次起作用。

您可以将开始放在新行上,但不要在其间包含空行。或者,为了更容易看到伪段落的位置,请在中间放置以 开头的行%,LaTeX 不会将其视为空行。

答案3

我也遇到了同样的问题,但原因不同。

{\hskip \parindent}

在我的某个段落的开头,删除它可以解决问题。

我尝试用它代替

\hspace{\parindent}

但这也造成了wrapfigure错位和文本重叠。

答案4

我发现定义文本区域的间距可使文本正确换行,尤其是对于具有透明背景的图形。例如,使用\begin{spacing}{1.0}以 结尾\end{spacing}。您将需要 setspace 包:\usepackage{setspace}

相关内容