So entfernen Sie zusätzlichen Platz unter Wrapfigure, wenn Sie vspace im Text verwenden

So entfernen Sie zusätzlichen Platz unter Wrapfigure, wenn Sie vspace im Text verwenden

Ich erstelle einige benutzerdefinierte Umgebungen. Eine davon wird platziert \wrapfigureund die zweite enthält Text, der die erste umschließen soll.

Wenn ich zwischen Absätzen etwas hinzufüge \vspace, wird der Leerraum unter \wrapfitureder Umgebung größer.

Gibt es eine Möglichkeit, dieses Leerzeichen zu entfernen?

Ich kann die genaue Zeilenzahl nicht angeben \wrapfigure, da sie variieren kann. Ich möchte in meiner zweiten Umgebung den Abstand zwischen den Absätzen konfigurieren können.

Unten habe ich MWE des Textes ohne \vspaceund mit vorbereitet \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}

Bildbeschreibung hier eingeben

\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}

Bildbeschreibung hier eingeben

Antwort1

Ihr Beispieltext hatte außerhalb der Wrapfig nur einen einzigen Absatz mit vertikalem Abstand zwischen den Zeilen. Das ist schwer zu erkennen (und die Verwendung von vertikalem Abstand in der Mitte des Absatzes hat etwas seltsame Auswirkungen. Es ist fast immer besser, den Absatz mit einer Leerzeile zu beenden, bevor Sie einen Abstand hinzufügen).

Hier stelle ich den Absatzabstand lokal auf 50 pt ein und passe ihn wrapfigso an, dass jedes Absatzende als zusätzliche 4 Zeilen zählt (eigentlich ergibt ein Abstand von 5 Zeilen hier einen besseren Abstand, aber 5*12 ist 60 > 50, was eigentlich bedeuten würde, dass Sie überkompensieren und es könnte dazu führen, dass nicht genug Platz übrig bleibt. 12 pt ist hier der Standard-Grundzeilenabstand.)

\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}

Bildbeschreibung hier eingeben

verwandte Informationen