自定义 Memoir Class 的 \fancybreak

自定义 Memoir Class 的 \fancybreak

回应空行后不缩进@jon 提供了以下\fancybreak摘自的宏memoir.cls

\makeatletter
\newcommand{\fancybreak}{\@ifstar{\@sfbreak}{\@fbreak}}
\newcommand{\@fbreak}[1]{\par
  \penalty -100
  \noindent\parbox{\linewidth}{\centering #1}%%\null
  \par
  \@afterindentfalse
  \@afterheading}
\newcommand{\@sfbreak}[1]{\par
  \penalty -100
  \noindent\parbox{\linewidth}{\centering #1}%%\null
\par
  \@afterindenttrue
  \@afterheading}
\makeatother

但是,如果 PDF 输出中页面底部出现这种情况,则从下一页开始的段落会获得额外的顶部垂直空间。是否可以自定义宏以避免该行为?

梅威瑟:

\documentclass[10pt]{book}
\usepackage[paperwidth=5in,paperheight=7.5in, margin=0.7in]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{libertine}

\makeatletter
\newcommand{\fancybreak}{\@ifstar{\@sfbreak}{\@fbreak}}
\newcommand{\@fbreak}[1]{\par
  \penalty -100
  \noindent\parbox{\linewidth}{\centering #1}%%\null
  \par
  \@afterindentfalse
  \@afterheading}
\newcommand{\@sfbreak}[1]{\par
  \penalty -100
  \noindent\parbox{\linewidth}{\centering #1}%%\null
\par
  \@afterindenttrue
  \@afterheading}
\makeatother

\begin{document}
Lorem ipsum dolor sit amet, est alia eirmod no, at has graecis molestie luptatum. Menandri maluisset usu in. Vim cu ceteros luptatum, in mel doming equidem docendi. Timeam volutpat vix ad, vidit albucius duo ne, sed cibo probo ex. No sit meis novum, mel ullum nonumy et, pri an agam eirmod doctus.

Sale apeirian eloquentiam mei ex. Propriae tacimates senserit id per, doming accumsan cum id, omnium scripserit mei eu. Sea pertinacia voluptatibus ex. In audiam menandri conceptam ius, ex mel nullam nemore facilisi, nec ut democritum scripserit. Similique adolescens ius et. Tritani epicurei vel id, usu at salutandi erroribus.

Mel affert regione intellegam ut, etiam minim eos ad. Sit ex malorum persius facilis, et alia sententiae efficiantur usu. Ad sit assueverit reformidans. Augue labore ea cum, ad tamquam antiopam imperdiet ius. Impedit epicurei pro te, sensibus contentiones id eam.

Eam voluptatum appellantur instructior ad, at usu soluta dignissim reprimique, eam no vitae scaevola deterruisset. Id tation consetetur voluptatibus sit, eos eius laudem cu, tibique adipisci his id. Delenit accusam lucilius ea vel, virtute phaedrum concludaturque cu sit. Est te harum mandamus disputando. Nam minim mazim et. In apeirian explicari eam.

Ad vis tibique copiosae tractatos. Purto reque doming sed ad, mutat abhorreant et usu. Tota apeirian dignissim eum ut, pri dicta legimus reprimique ne. Eu has rebum soluta. Liber recteque philosophia et vix, ex salutatus pertinacia concludaturque duo, cu mea utinam aeterno signiferumque.

An aliquam salutatus duo, an qui epicurei persecuti, duis dissentias ad pri. Integre mnesarchum ad est. In pro nemore torquatos. Altera feugiat nusquam te vim, nam et dicta decore consul. Eu ornatus eleifend has, at fabulas menandri vel, cu volutpat constituam pro.

Eam aeterno discere in, ea dicant expetendis repudiandae vim, an usu iudico docendi explicari. Eam iudico omnium volumus an. Quem ullamcorper sit ea, et dolorum noluisse philosophia est. Ne enim meis ignota mei, ex decore deleniti ullamcorper.

\fancybreak

Perfecto atomorum voluptaria eu mea, cum ut solum clita quaerendum. Ne quo offendit oportere, pro eu ignota habemus, solum ludus no ius. Per eu illud populo ancillae, ei vix meliore blandit, ei qui malorum aliquando consequuntur. Bonorum mentitum vim cu. Sed ne tation latine.

Viris tibique signiferumque ne sit. Dissentiunt vituperatoribus vim te, ea facete imperdiet usu. Ea bonorum delicata qualisque usu, munere doming ius ex. Te mei dolores lucilius. In sea labores persecuti voluptatibus, ea choro partem referrentur pro, no utamur delicatissimi necessitatibus sit. Qui ad vivendo sapientem, enim illud sensibus ea duo.

Eam ex alia ignota moderatius, ea tota oratio reprimique mei, sed an hinc laudem. Eu consul laudem nec. Quas tibique maiestatis est an. Sea no wisi quaestio.
\end{document}

答案1

代码中定义的命令\fancybreak需要一个参数。在您的用法中,参数结果是\par(由于空行),它产生了

\noindent\parbox{\linewidth}{\centering\par}

因此形成了一个段落(其中除了 之外没有任何内容)\noindent

你只需要空间,这样你就可以定义

\makeatletter
\newcommand{\novelbreak}{%
  \par\penalty-100\bigskip
  \@afterindentfalse\@afterheading
}
\makeatother

调整间距以适应;这里我使用了\bigskip;你可能需要

\vspace{2\baselineskip}

或类似。如果您不使用整数条线,请添加拉伸和收缩组件。

完整示例:

\documentclass[10pt]{book}
\usepackage[paperwidth=5in,paperheight=7.5in, margin=0.7in,heightrounded]{geometry}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{libertine}

\makeatletter
\newcommand{\novelbreak}{%
  \par\penalty-100\bigskip
  \@afterindentfalse\@afterheading
}
\makeatother

\begin{document}
Lorem ipsum dolor sit amet, est alia eirmod no, at has graecis
molestie luptatum. Menandri maluisset usu in. Vim cu ceteros 
luptatum, in mel doming equidem docendi. Timeam volutpat vix ad, 
vidit albucius duo ne, sed cibo probo ex. No sit meis novum, mel 
ullum nonumy et, pri an agam eirmod doctus.

Sale apeirian eloquentiam mei ex. Propriae tacimates senserit id 
per, doming accumsan cum id, omnium scripserit mei eu. Sea pertinacia 
voluptatibus ex. In audiam menandri conceptam ius, ex mel nullam 
nemore facilisi, nec ut democritum scripserit. Similique adolescens 
ius et. Tritani epicurei vel id, usu at salutandi erroribus.

\novelbreak

Mel affert regione intellegam ut, etiam minim eos ad. Sit ex malorum 
persius facilis, et alia sententiae efficiantur usu. Ad sit assueverit 
reformidans. Augue labore ea cum, ad tamquam antiopam imperdiet ius. 
Impedit epicurei pro te, sensibus contentiones id eam.

Eam voluptatum appellantur instructior ad, at usu soluta dignissim 
reprimique, eam no vitae scaevola deterruisset. Id tation consetetur 
voluptatibus sit, eos eius laudem cu, tibique adipisci his id. Delenit 
accusam lucilius ea vel, virtute phaedrum concludaturque cu sit. 
Est te harum mandamus disputando. Nam minim mazim et. In apeirian 
explicari eam.

Ad vis tibique copiosae tractatos. Purto reque doming sed ad, mutat 
abhorreant et usu. Tota apeirian dignissim eum ut, pri dicta legimus 
reprimique ne. Eu has rebum soluta. Liber recteque philosophia et vix, 
ex salutatus pertinacia concludaturque duo, cu mea utinam aeterno signiferumque.

An aliquam salutatus duo, an qui epicurei persecuti, duis dissentias 
ad pri. Integre mnesarchum ad est. In pro nemore torquatos. Altera 
feugiat nusquam te vim, nam et dicta decore consul. Eu ornatus 
eleifend has, at fabulas menandri vel, cu volutpat constituam pro.

Eam aeterno discere in, ea dicant expetendis repudiandae vim, 
an usu iudico docendi explicari. Eam iudico omnium volumus an. 
Quem ullamcorper sit ea, et dolorum noluisse philosophia est. 
Ne enim meis ignota mei, ex decore deleniti ullamcorper.

\novelbreak

Perfecto atomorum voluptaria eu mea, cum ut solum clita 
quaerendum. Ne quo offendit oportere, pro eu ignota habemus, solum 
ludus no ius. Per eu illud populo ancillae, ei vix meliore blandit, 
ei qui malorum aliquando consequuntur. Bonorum mentitum vim cu. Sed 
ne tation latine.

Viris tibique signiferumque ne sit. Dissentiunt vituperatoribus vim 
te, ea facete imperdiet usu. Ea bonorum delicata qualisque usu, 
munere doming ius ex. Te mei dolores lucilius. In sea labores 
persecuti voluptatibus, ea choro partem referrentur pro, no 
utamur delicatissimi necessitatibus sit. Qui ad vivendo sapientem, 
enim illud sensibus ea duo.

Eam ex alia ignota moderatius, ea tota oratio reprimique mei, sed 
an hinc laudem. Eu consul laudem nec. Quas tibique maiestatis est 
an. Sea no wisi quaestio.
\end{document}

在此处输入图片描述

相关内容