wrapfigure 超出了 mdframed 的界限

wrapfigure 超出了 mdframed 的界限

我到处都找过了,但无法弄清楚为什么wrapfigure在图像周围使用会导致它超出mdframed环境范围。

我尝试过的事情

  • tcolorbox
  • minipage內部/外部wrapfigure
  • varwidth

图像

图像延伸到框架之外并位于下一个列表项下方。

问题截图

代码

\begin{mdframed}
    \textbf{Solution: }

    \begin{wrapfigure}{l}{2.5in}
        \includegraphics[height=3in]{media/image4.png}
    \end{wrapfigure}

    \begin{align*}
        \mathbf{v}_\mathrm{\frac{barge}{river}} &= \mathbf{v}_\mathrm{\frac{barge}{shore}}
        - \mathbf{v}_\mathrm{\frac{river}{shore}}
        \\
        \SI{-8}{\metre\per\second} &= \mathbf{v}_\mathrm{\frac{barge}{shore}}
        - \SI{5}{\metre\per\second}
        \\
        \mathbf{v}_\mathrm{\frac{barge}{shore}} &= \SI{-3}{\metre\per\second} 
    \end{align*}
\end{mdframed}

答案1

此解决方案使用 minipages 而不是 wrapfig。虽然可以对齐顶部而不是中心,但您需要\raisebox在图像上使用。

\documentclass{article}
\usepackage{amsmath}
\usepackage{siunitx}
\usepackage{mdframed}
\usepackage[draft]{graphicx}

\begin{document}
\begin{mdframed}
    \textbf{Solution: }
    
    \noindent\begin{minipage}{2.5in}
        \includegraphics[height=3in, width=2.5in]{media/image4.png}
    \end{minipage}\hfill
    \begin{minipage}{\dimexpr \textwidth-2.5in-\columnsep}
    \begin{align*}
        \mathbf{v}_\mathrm{\frac{barge}{river}} &= \mathbf{v}_\mathrm{\frac{barge}{shore}}
        - \mathbf{v}_\mathrm{\frac{river}{shore}}
        \\
        \SI{-8}{\metre\per\second} &= \mathbf{v}_\mathrm{\frac{barge}{shore}}
        - \SI{5}{\metre\per\second}
        \\
        \mathbf{v}_\mathrm{\frac{barge}{shore}} &= \SI{-3}{\metre\per\second} 
    \end{align*}
    \end{minipage}
\end{mdframed}
\end{document}

相关内容