下面这个标题,它出现在版心的垂直位置的极限位置如何控制?
例如,我想让一个标题禁止出现在版心靠下80%
的位置到版心底部之间的区域,似乎文档类article
[或是(la)tex]有这方面的接口,(因为下图看上去,第一页还没排满,标题就已经去第二页了)但我不知道叫什么名字。
\documentclass{article}
\usepackage[scale=.9, papersize={10.5cm, 14.85cm}, showframe]{geometry}
\begin{document}
\ExplSyntaxOn
\int_step_inline:nn {55}{This\ is\ a\ new\ .tex\ document.\ }
\ExplSyntaxOff
\section{new section}
\ExplSyntaxOn
\int_step_inline:nn {2}{This\ is\ a\ new\ .tex\ document.\ }
\ExplSyntaxOff
\end{document}
不知道你是不是在找「section」如何设置pagebreak
的惩罚(?)
我尝试找了下:
$ article.cls, line302
\newcommand\section{\@startsection {section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\normalfont\Large\bfseries}}
以及:
% latex.ltx, line 15606:
\def\@startsection#1#2#3#4#5#6{%
\if@noskipsec \leavevmode \fi
\par
\@tempskipa #4\relax
\@afterindenttrue
\ifdim \@tempskipa <\z@
\@tempskipa -\@tempskipa \@afterindentfalse
\fi
\if@nobreak
\everypar{}%
\else
\addpenalty\@secpenalty\addvspace\@tempskipa
\fi
\@ifstar
{\@ssect{#3}{#4}{#5}{#6}}%
{\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
其中
\if@nobreak
\everypar{}%
\else
\addpenalty\@secpenalty\addvspace\@tempskipa
\fi
似乎 设置了\section
后的惩罚。可惜,我不懂TeX
....