Por que 'wrapfigure' e seu parágrafo não aparecem juntos?

Por que 'wrapfigure' e seu parágrafo não aparecem juntos?

wrapfigé normalmente usado com a intenção de compor lado a lado com um determinado texto que deve envolvê-lo. Porém, quando uso muitos carros alegóricos perto de wrapfig, uma parte de todo o texto não ficará próxima da figura quebrada. Além disso, a figura não está em harmonia com as demais. Como faço para resolver isso?

insira a descrição da imagem aqui

Meu MWE

\documentclass[a4paper,12pt]{article}

\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{wrapfig}
\usepackage{blindtext}
\usepackage[showframe]{geometry}
\usepackage{ragged2e}


\begin{document}

    \newcommand{\commonfigwidth}{0.35\linewidth}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-a}
        \caption{My Fig}
    \end{figure}


    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-b}
        \caption{My Fig}
    \end{figure}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-c}
        \caption{My Fig}
    \end{figure}

    \begin{wrapfigure}{O}{\commonfigwidth} 
        \includegraphics[width=\linewidth]{example-image-a}
        \centering This is a circuit
    \end{wrapfigure}
    \blindtext

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-b}
        \caption{My Fig}
    \end{figure}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-c}
        \caption{My Fig}
    \end{figure}

\end{document}

Responder1

wrapfigurenão tem conexão com o mecanismo de flutuação usual, portanto, se você usar ambos, precisará gerenciar quaisquer problemas que surjam, aqui acho que você obterá uma saída aceitável se evitar que o recorte continue na próxima página, via

    \begin{wrapfigure}[8]{O}{\commonfigwidth} 
    \includegraphics[width=\linewidth]{example-image-a}
    \centering This is a circuit
    \end{wrapfigure}

restringindo-o a 8 linhas (em vez das 10 que usaria por padrão)

insira a descrição da imagem aqui

Responder2

insira a descrição da imagem aqui

O LaTeX não será considerado wrapfigureum float a menos que seja escrito dentro figuredo ambiente. Tudo o que existe dentro figureou tableno ambiente deve ser mostrado de uma vez em qualquer página selecionada pelo LaTeX. Assim, uma boa solução alternativa é

\begin{figure}

    \begin{wrapfigure}{<other wrapfig arguments>} 
        \includegraphics[width=\linewidth]{<image file name>}
    \end{wrapfigure}

  <the text that should wrap the figure>

\end{figure}

Dessa forma, o(s) parágrafo(s) que deveria(m) estar próximo(s) da figura agrupada serão forçados a permanecer lá mesmo que o material ao seu redor tenha muitos flutuadores. Além disso, o LaTeX colocará todos os carros alegóricos na ordem em que apareceram no código-fonte, o que também resolverá o problema de ordem mencionado.

\documentclass[a4paper,12pt]{article}

\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{wrapfig}
\usepackage{blindtext}
\usepackage[showframe]{geometry}
\usepackage{ragged2e}


\begin{document}

    \newcommand{\commonfigwidth}{0.35\linewidth}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-a}
        \caption{My Fig}
    \end{figure}


    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-b}
        \caption{My Fig}
    \end{figure}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-c}
        \caption{My Fig}
    \end{figure}

    \begin{figure}

        \begin{wrapfigure}{O}{\commonfigwidth} 
            \includegraphics[width=\linewidth]{example-image-a}
            \centering This is a circuit
        \end{wrapfigure}

    \blindtext

    \end{figure}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-b}
        \caption{My Fig}
    \end{figure}

    \begin{figure}
        \centering
        \includegraphics[width=\commonfigwidth]{example-image-c}
        \caption{My Fig}
    \end{figure}

\end{document}

informação relacionada