проблема с разрывом страницы и теоремой amsmath

проблема с разрывом страницы и теоремой amsmath

В приведенном ниже примере вы заметите, что когда a \pagebreakиспользуется сразу после теоремы, после окружения теоремы добавляется нежелательный вертикальный пробел, хотя этого делать не следует.

\documentclass[11pt,fleqn]{book}
\usepackage[showframe,top=3.4cm,bottom=3.4cm,left=3cm,right=3cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsthm}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{blindtext}
%----------------------------------------------
\theoremstyle{plain}
\newmdtheoremenv{theoreme}{Theorem}
\begin{document}%
\flushbottom
%----------------------------------------------
\chapter{Title}
%----------------------------------------------
\blindtext[3]
\begin{theoreme}text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text\end{theoreme}
\pagebreak % TO BE COMMENTED FOR TESTING
text
\end{document}
%----------------------------------------------
  • с разрывом страницы введите описание изображения здесь

  • без разрыва страницы введите описание изображения здесь

решение1

Как говорит Барбара Битон, это ожидаемое поведение. Однако вы можете обойти это, добавив \unskipперед \pagebreak:

Пример вывода

Альтернатива, предложенная egreg, — это \addpenalty{-10000}вместо комбинации \unskip\pagebreak. Код для \addpenaltyпо существу включает \unskipи \pagebreak(без аргумента) по существу \penalty-10000.

\documentclass[11pt,fleqn]{book}
\usepackage[showframe,top=3.4cm,bottom=3.4cm,left=3cm,right=3cm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{amsthm}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{blindtext}
%----------------------------------------------
\theoremstyle{plain}
\newmdtheoremenv{theoreme}{Theorem}
\begin{document}%
\flushbottom
%----------------------------------------------
\chapter{Title}
%----------------------------------------------
\blindtext[3]
\begin{theoreme}text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text\end{theoreme}
\unskip\pagebreak % TO BE COMMENTED FOR TESTING
text
\end{document}
%----------------------------------------------

Связанный контент