与 cutwin 错位

与 cutwin 错位

编译下面的代码会导致绘制框时文本错位。

\documentclass[fleqn,11pt]{book}
\usepackage{cutwin}
\begin{document}
\renewcommand\windowpagestuff{\flushright\rule{2cm}{2cm}}%
\opencutright%
text text text text text text text text text text text text text text text text text   text text text text text text text text text text text text
\begin{cutout}{1}{0.79\linewidth}{0pt}{5}%
text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text
\end{cutout}
\end{document}

在此处输入图片描述

您知道一些避免这种行为的好方法吗?

答案1

这似乎是环境本身的一个小问题。

首先,您必须将环境设置为单个段落。(参见文档)

接下来我使用 great 包重新定义了环境本身regexpatch

\documentclass[fleqn,11pt]{book}

\usepackage{cutwin,kantlipsum,mwe}
\usepackage{regexpatch}
\opencutright
\renewcommand\windowpagestuff{\centering\includegraphics[width=2cm]{example-image-b}}%

\makeatletter
\xpretocmd{\cutout}{\leavevmode\hrule \@height\z@ \@width\linewidth\relax}
\makeatother

\begin{document}
\kant[3]

\begin{cutout}{2}{0.7\linewidth}{0pt}{5}%
\kant[1]
\end{cutout}
\end{document}

在此处输入图片描述

相关内容