如何控制标题禁止出现在版心的垂直位置的极限位置?

发布于 2025-06-03 17:37:38

下面这个标题,它出现在版心的垂直位置的极限位置如何控制?
例如,我想让一个标题禁止出现在版心靠下80%的位置到版心底部之间的区域,似乎文档类article[或是(la)tex]有这方面的接口,(因为下图看上去,第一页还没排满,标题就已经去第二页了)但我不知道叫什么名字。

image.png

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

查看更多

关注者
0
被浏览
88
1 个回答
Sagittarius Rover
我要成为Typst糕手/(ㄒoㄒ)/~~

不知道你是不是在找「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....

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览