Seitenumbruch einige Zeilen nach der Abbildung vermeiden

Seitenumbruch einige Zeilen nach der Abbildung vermeiden

Ich schreibe ein Dokument, das aus dem sich wiederholenden Format besteht: Text, Abbildung, dann ein längerer Absatz. Wie kann ich einen Seitenumbruch verhindern?zwischensowohl des Textes als auchfigure der Umgebungen, ohne die Möglichkeit zu entfernen, die Seite automatisch zu unterbrecheninnerhalbder Hauptteil des zweiten Textes?

\nopagebreakscheint nach der figureUmgebung keine Wirkung mehr zu haben. (Und ich nehme an, dass die Beschränkung auf a minipagein diesem zweiten Absatz keinen Seitenumbruch zulassen würde.)

Ich habe kein Problem mit Leerraum am Ende einer Seite, möchte aber, dass jede sich wiederholende Gruppe nicht unbedingt auf einer neuen Seite beginnt.

Antwort1

Vielleicht sucht der OP einfach nach einer Version der centerUmgebung, die Seitenumbrüche über und unter sich verbietet. Dies ist leicht zu erreichen. Beispielsweise definiert das folgende MWE eine Umgebung namens , centernopagebreaksdie die entsprechenden Parameter lokal neu definiert und dann die centerUmgebung aufruft.

Notiz:Beim Testen dieses Beispiels ist mir aufgefallen, dass die\captionof Befehl einen gültigen Haltepunkt einfügtzwischendie Abbildung und ihre Beschriftung. Ich habe das ausgeglichen, indem ich alles in eine minipageUmgebung eingebunden habe, aber ist das nicht ein Fehler?

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{caption}
\usepackage{mwe}

\makeatletter
\newenvironment*{centernopagebreaks}{%
  \@beginparpenalty \@M
  \@endparpenalty   \@M
  \@itempenalty     \@M
  \center
}{\endcenter}
\makeatother

\begin{document}
\lipsum[2]
\begin{centernopagebreaks}
    \begin{minipage}[b]{\textwidth}
        \centering
        \includegraphics{image}
        \par\special{comment: Why no penalty below write and rule?}
        \captionof{figure}{An image}
        \label{fig;img}
    \end{minipage}
\end{centernopagebreaks}
\lipsum[1]

% % If you can read the logging info provided by (core) TeX,
% % uncomment the following lines to check the penalties.
% \showboxbreadth = 1000
% \showboxdepth = 5
% \showlists
\end{document}

Ich glaube nicht, dass es sinnvoll ist, die Ausgabe anzuzeigen. Sie sollten vielmehr die Diagnosebefehle auskommentieren und überprüfen, ob die in der Transkriptdatei angegebenen Strafen korrekt sind.

verwandte Informationen