编辑

编辑

我在包含许多小节的文档中使用包wrapfig。每页至少一个。我有一个很高的图形,几乎是整个页面的高度,所以我假设wrapfig这是放置它的正确方法 - 一列文本(约占页面宽度的 60%)和一列图形(约占页面宽度的 40%)。

然而,wrapfig当它扩展到一个部分或子部分时,似乎会出现问题。有两个(12) 网站上的问题已经提到了这个问题,但这两个问题的答案都是“将新部分放在下一页”。由于我有许多部分,因此这在本文档中不起作用。

也许解决方案是嵌入wrapfig到另一个环境中,但我不确定是哪一个。

编辑

我发现了导致该问题的原因:

\setcounter{secnumdepth}{-1}

这是 MWE。它应该会生成下面的屏幕截图。注释掉上面的行,似乎wrapfig可以正常工作。

\RequirePackage[l2tabu, orthodox]{nag}
\documentclass[12pt]{article}
\usepackage{lipsum}
\usepackage{wrapfig}
\setcounter{secnumdepth}{-1}  % disables section and subsection numbering
\begin{document}
\section{Section 1}
\begin{wrapfigure}{r}{0.30\linewidth}
  \rule{5cm}{9cm}
  \caption{Caption}
  \label{fig:fig}
\end{wrapfigure}
\subsection{Subsection 1}
\lipsum[1]
\subsection{Subsection 2}
\lipsum[2-4]
\end{document}

在此处输入图片描述

答案1

在此处输入图片描述

有趣的,

您可以修补部分处理,以便一切正常:

添加

\makeatletter
\def\patchsect#1\let\@svsec\@empty{#1\def\@svsec{\leavevmode\kern1sp\relax}}
\let\old@sect\@sect
\def\@sect{\expandafter\patchsect\old@sect}
\makeatother

但是如果你的实际文档使用像这样的编号部分,则设置secnumdepth为 -1 并在部分标题中使用数字是错误的做法,它会禁用所有 LaTeX 的交叉引用机制。请参阅这个问题

相关内容