谢谢这个答案我已经能够避免内容中出现不愉快的跳跃,但是,正如您在图片中看到的那样,底部边距没有受到尊重。
我想要的是:
红色内容不仅仅保留在一页上(它始终与包含命令的下一个段落保留在一起
ccebody
(我这样说是因为有时下一个段落可能与命令合二为一ccesection
,在这种情况下我想将跳转到新页面的三个段落分组)。但是,我希望后续
ccebody
段落尊重底部边距(可能是从下一页开始整个段落或至少尊重底部边距)。
这是我的实际代码:
\documentclass[ebook,11pt,twoside,openright,showtrims]{memoir}
\setstocksize{9in}{6in}
\settrimmedsize{9in}{6in}{*}
\setbinding{0.5in}
\setlrmarginsandblock{0.5in}{0.4in}{*}
\setulmarginsandblock{0.5in}{0.5in}{*}
\setheadfoot{12.07pt}{\footskip}
\checkandfixthelayout
\usepackage{fontspec}
\newfontfamily\headerfont{Libertinus Sans}
\usepackage{polyglossia}
\setdefaultlanguage{spanish}
\usepackage{csquotes}
\usepackage{xcolor}
\usepackage{layout}
\usepackage{needspace}
\usepackage{lipsum}
\usepackage[showframe, pass]{geometry}
\newcommand{\txtred}{\textcolor{red}}
\newcommand\n[1]{\txtred{\textbf{#1}}}
%--------------------------------------------------------------------- CCE styles
\newcommand{\ccetheme}[2]{%
\def\cceA{#1}%
\def\cceB{#2}%
}
%Títulos en negrita del propio CCE
\newcommand{\ccesection}[1]{%
\par% Start a new paragraph
\addvspace{\baselineskip}% Space above
\noindent\textbf{#1}%
\par
}
\newenvironment{ccebody}{%
\par% Start a new paragraph
\noindent\begin{minipage}[t]{\linewidth}%
\setlength\parindent{15pt}%
\ifx\cceA\relax\else
\begin{center}
\bfseries% Weight
\color{red}% Colour
\large \cceA\\\cceB
\end{center}%
\fi
\global\let\cceA\relax
\par
}%
{\end{minipage}%
\par}
\newenvironment{ccecite}{%
% \begin{cr}{#1}
\quote
\alterfont% Font
}
{\endquote
}
\raggedbottom
\begin{document}
\section{Temas}
\ccetheme{La Alianza con Noé} {CEC 56-58, 71}
\begin{ccebody}
\n{56} \lipsum[1-29]
\end{ccebody}
\ccetheme{Test} {CEC NNNN}
\begin{ccebody}
\n{57} \lipsum[1-3]
\end{ccebody}
\begin{ccebody}
\n{58} \lipsum[5]
\end{ccebody}
\begin{ccebody}
\n{59} \lipsum[6-8]
\end{ccebody}
\ccetheme{Test} {CEC MMMM}
\begin{ccebody}
\ccesection{This is title on bold}
\n{59} \lipsum[1-29]
\end{ccebody}
\begin{ccebody}
\n{60} \lipsum[5]
\end{ccebody}
\end{document}
这是输出:
我的想法是,该段落Quisque ullamcorper ...
转到下一页,因为它溢出了底部边距。