Como remover espaço adicional em wrapfigure ao usar vspace em texto

Como remover espaço adicional em wrapfigure ao usar vspace em texto

Estou criando alguns ambientes personalizados. Um deles será colocado \wrapfiguree o segundo conterá o texto que deverá envolver o primeiro.

Quando adiciono \vspaceentre parágrafos, o espaço em branco no \wrapfitureambiente aumenta.

Existe alguma maneira de remover esse espaço em branco?

Não consigo especificar o número exato de linhas que \wrapfigureserão necessárias, pois pode variar. Gostaria de poder configurar o espaço entre parágrafos em meu segundo ambiente.

Abaixo preparei MWE de texto sem \vspacee com \vspace:

\documentclass[a4paper,10pt]{article}
\usepackage{wrapfig}
\usepackage{blindtext}

\begin{document}
    \begin{wrapfigure}{l}{0.29\linewidth}
        \begin{enumerate}
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
        \end{enumerate}
    \end{wrapfigure}
    \blindtext[1]\\

    \blindtext[1]\\

    \blindtext[1]
\end{document}

insira a descrição da imagem aqui

\documentclass[a4paper,10pt]{article}
\usepackage{wrapfig}
\usepackage{blindtext}

\begin{document}
    \begin{wrapfigure}{l}{0.29\linewidth}
        \begin{enumerate}
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
        \end{enumerate}
    \end{wrapfigure}
    \blindtext[1]\\
    \vspace{50pt}
    \blindtext[1]\\
    \vspace{50pt}
    \blindtext[1]
\end{document}

insira a descrição da imagem aqui

Responder1

Seu texto de exemplo, fora do wrapfig tinha apenas um único parágrafo, com espaço vertical inserido entre as linhas. Isso é difícil de entender (e usar vspace no meio do parágrafo tem efeitos um pouco estranhos, quase sempre é melhor terminar o parágrafo com uma linha em branco antes de adicionar espaço.

Aqui eu defino localmente o espaçamento do parágrafo para 50pt e ajustei wrapfigpara que cada final de parágrafo conte como 4 linhas adicionais (na verdade, 5 linhas têm melhor espaçamento aqui, mas 5*12 sendo 60 > 50 significaria que você está compensando demais e poderia resultar em não resta espaço suficiente. 12pt é o espaço de linha de base padrão aqui.)

\documentclass[a4paper,10pt]{article}
\usepackage{wrapfig}
\usepackage{blindtext}

\begin{document}

\begingroup
\makeatletter
\setlength\parskip{50pt}
\def\WF@mypar{\relax
 \WF@@par % what the rest of LaTeX expects \par to be (usually \@@par)
 \ifnum\@@parshape=\z@ \let\WF@pspars\@empty \fi % reset `parshape'
 \global\advance\c@WF@wrappedlines-\prevgraf \prevgraf\z@
 \global\advance\c@WF@wrappedlines-4
 \ifnum\c@WF@wrappedlines<\tw@ \WF@finale \fi}


    \begin{wrapfigure}{l}{0.29\linewidth}

        \begin{enumerate}
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
            \item Test item
        \end{enumerate}
    \end{wrapfigure}
    \blindtext[1]

    \blindtext[1]


    \blindtext[1]

\endgroup

\end{document}

insira a descrição da imagem aqui

informação relacionada