如何使 adjustbox 与 wrapfigure 正确配合使用?

如何使 adjustbox 与 wrapfigure 正确配合使用?

我有一个调整框环境,它为内容提供彩色背景。它与 wrapfigure 配合得不好。它与内容重叠。下面是 mew。

\documentclass{scrartcl}
\usepackage{adjustbox}
\usepackage{wrapfig}
\usepackage{lipsum}
\usepackage{tikz}


\newenvironment{bluebox}{%
    \noindent
    \adjustbox{innerenv={varwidth}[c]{1.1\linewidth},margin=\fboxsep+.25cm \fboxsep+.2cm,bgcolor=blue!10,frame,center}\bgroup
}{%

    \egroup
}

\begin{document}
\lipsum[3-5]
\begin{wrapfigure}{L}{3.00in}
\begin{bluebox}
\lipsum[4]
\end{bluebox}
\end{wrapfigure}
\lipsum[3-5]

\end{document}

输出如下所示:包裹图形并调整框。如果与 wrapfigure 一起使用,adjustbox 将与其余内容重叠。我该如何解决这个问题。

答案1

您必须使用适当的宽度varwidth

\adjustbox{innerenv={varwidth}{\dimexpr\linewidth-2\fboxsep-0.45cm\relax},
    margin=\fboxsep+.25cm \fboxsep+.2cm,bgcolor=blue!10,frame,center}

margin我从中减去了adjustbox(\fboxsep+.25cm \fboxsep+.2cm,) \linewidth。如果使用1.1\linewidth内容会更宽,因此会产生不理想的效果。

代码:

\documentclass{scrartcl}
\usepackage{adjustbox}
\usepackage{wrapfig}
\usepackage{kantlipsum}
\usepackage{tikz}


\newenvironment{bluebox}{%
    \noindent
    \adjustbox{innerenv={varwidth}{\dimexpr\linewidth-2\fboxsep-0.45cm\relax},
    margin=\fboxsep+.25cm \fboxsep+.2cm,bgcolor=blue!10,frame,center}\bgroup
}{%
    \egroup
}

\begin{document}
\kant[3-5]
\begin{wrapfigure}{L}{3.00in}
\begin{bluebox}
\kant[1]
\end{bluebox}
\end{wrapfigure}
\kant[3-5]

\end{document}

在此处输入图片描述

相关内容