高度定制的章节、节和小节标题

高度定制的章节、节和小节标题

在浏览了一些关于自定义标题和错误分节符的论坛帖子后,我仍然无法消除后者。

我已经自定义了自己的章节和部分,它们会生成“孤独的”部分标题(请查看 MWE)。我确信这样做是错误的。有人能给我指点迷津吗?

\documentclass{book}
\usepackage{fourier-orns}

\makeatletter
%%%SECTION%%%
\def\section{\MySection}
\def\MySection#1{
    \vskip 3ex \goodbreak
    \begingroup
        \noindent
            \Large\textbf{\S\thesection$\;$\textsc{#1}}\vspace{-.5\baselineskip}\par
        \noindent
    \endgroup
    \vskip 2\baselineskip %\goodbreak
}

%%%CHAPTER%%%
\def\@makechapterhead#1{
    \vspace*{\baselineskip}
    \begin{center}
        {\large\sc{Chapter \thechapter}}
        \par
        \noindent{\centering ------\large\decoone------}

        {\huge \strut{\sc{#1}}\strut \par}
    \end{center}
    \vskip 70\p@
}
\makeatother

\begin{document}
    \chapter{Top level}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam facilisis massa vel lacus varius dapibus. Pellentesque volutpat, tortor mattis eleifend euismod, tellus risus imperdiet dolor, id lobortis eros mi quis augue. Vestibulum eleifend congue orci id sollicitudin. Interdum et malesuada fames ac ante ipsum primis in faucibus. Ut non suscipit libero, ornare rutrum augue. Suspendisse tortor elit, sagittis quis porttitor nec, hendrerit eu velit. Aenean lacinia diam vel dui pulvinar placerat. In eget purus velit.

Cras hendrerit euismod justo ut tincidunt. Etiam ultrices, urna quis dapibus elementum, risus quam ornare nibh, nec fringilla lectus lectus in massa. Proin suscipit auctor tempor. Pellentesque elit dolor, tincidunt ut tellus eu, eleifend tristique odio. Nulla suscipit, lectus quis sollicitudin volutpat, ligula sem feugiat velit, id aliquam nunc metus at metus. Cras a libero dignissim, convallis dui et, hendrerit tellus. In tempor, nisl facilisis adipiscing consectetur, diam diam mattis nisi, ornare facilisis risus quam a sem. Etiam vel sapien in dui feugiat bibendum. Phasellus eget felis ut eros porta venenatis vel vitae ipsum.

Sed eu urna auctor, condimentum nisi id, posuere mauris. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Maecenas eu rhoncus quam. Fusce suscipit posuere eros, sit amet laoreet nunc pellentesque ut. Suspendisse augue quam, fermentum vitae porttitor sed, mollis eu lectus. Nam ut iaculis nibh. In aliquam metus in nibh vulputate, dignissim hendrerit tellus elementum. Morbi luctus diam vel leo semper ullamcorper. Maecenas enim eros, molestie vel lorem id, sodales cursus urna. Nunc commodo dolor massa, ac aliquam orci volutpat ut. Cras lacinia tincidunt sem sit amet lacinia. Maecenas malesuada nulla sem, at dignissim lorem ornare sed. Vestibulum et lorem lacinia, elementum quam ullamcorper, fermentum ligula. Donec et dictum magna, quis pulvinar nibh. et lorem lacinia, elementum quam ullamcorper, fermentum ligula. Donec et dictum magna, quis pulvinar nibh. et lorem lacinia, elementum quam ullamcorper, fermentum ligula. Donec et dictum magna, quis pulvinar nibh.

\section{Bad Break}
Maecenas enim eros, molestie vel lorem id, sodales cursus urna. Nunc commodo dolor massa, ac aliquam orci volutpat ut. Cras lacinia tincidunt sem sit amet lacinia. Maecenas malesuada nulla sem, at dignissim lorem ornare sed. Vestibulum et lorem lacinia, elementum quam ullamcorper, fermentum ligula. Donec et dictum magna, quis pulvinar nibh


\end{document}

(另外,顺便提一下,您如何让编译后的 Latex 在此处进行渲染?)

答案1

类用于\@startsection设置标题,确保标题和文本之间不会发生分页符。

titlesec这是一个内部使用相同机制的实现。

\documentclass{book}
\usepackage{fourier-orns}
\usepackage{titlesec}

\titleformat{\chapter}[display]
 {\filcenter}
 {\large\scshape\chaptername\ \thechapter\\
  ---\negthinspace---\decoone---\negthinspace---}
 {0pt}
 {\huge}
\titlespacing*{\chapter}{0pt}{12pt}{70pt}

\titleformat{\section}[hang]
 {\Large\bfseries}
 {\S\thesection\ }
 {0pt}
 {}
\titlespacing*{\section}
  {0pt}
  {3.5ex plus 1ex minus .2ex}
  {1ex}

\begin{document}
\chapter{Top level}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam facilisis massa vel lacus 
varius dapibus. Pellentesque volutpat, tortor mattis eleifend euismod, tellus risus 
imperdiet dolor, id lobortis eros mi quis augue. Vestibulum eleifend congue orci id 
sollicitudin. Interdum et malesuada fames ac ante ipsum primis in faucibus. Ut non 
suscipit libero, ornare rutrum augue. Suspendisse tortor elit, sagittis quis porttitor 
nec, hendrerit eu velit. Aenean lacinia diam vel dui pulvinar placerat. In eget purus 
velit.

Cras hendrerit euismod justo ut tincidunt. Etiam ultrices, urna quis dapibus elementum, 
risus quam ornare nibh, nec fringilla lectus lectus in massa. Proin suscipit auctor 
tempor. Pellentesque elit dolor, tincidunt ut tellus eu, eleifend tristique odio. Nulla 
suscipit, lectus quis sollicitudin volutpat, ligula sem feugiat velit, id aliquam nunc 
metus at metus. Cras a libero dignissim, convallis dui et, hendrerit tellus. In tempor, 
nisl facilisis adipiscing consectetur, diam diam mattis nisi, ornare facilisis risus quam 
a sem. Etiam vel sapien in dui feugiat bibendum. Phasellus eget felis ut eros porta 
venenatis vel vitae ipsum.

Sed eu urna auctor, condimentum nisi id, posuere mauris. Class aptent taciti sociosqu ad 
litora torquent per conubia nostra, per inceptos himenaeos. Maecenas eu rhoncus quam. 
Fusce suscipit posuere eros, sit amet laoreet nunc pellentesque ut. Suspendisse augue 
quam, fermentum vitae porttitor sed, mollis eu lectus. Nam ut iaculis nibh. In aliquam 
metus in nibh vulputate, dignissim hendrerit tellus elementum. Morbi luctus diam vel leo 
semper ullamcorper. Maecenas enim eros, molestie vel lorem id, sodales cursus urna. Nunc 
commodo dolor massa, ac aliquam orci volutpat ut. Cras lacinia tincidunt sem sit amet 
lacinia. Maecenas malesuada nulla sem, at dignissim lorem ornare sed. Vestibulum et lorem 
lacinia, elementum quam ullamcorper, fermentum ligula. Donec et dictum magna, quis 
pulvinar nibh. et lorem lacinia, elementum quam ullamcorper, fermentum ligula. Donec et 
dictum magna, quis pulvinar nibh. et lorem lacinia, elementum quam ullamcorper, fermentum 
ligula. Donec et dictum magna, quis pulvinar nibh.

\section{Bad Break}

Maecenas enim eros, molestie vel lorem id, sodales cursus urna. Nunc commodo dolor massa, 
ac aliquam orci volutpat ut. Cras lacinia tincidunt sem sit amet lacinia. Maecenas 
malesuada nulla sem, at dignissim lorem ornare sed. Vestibulum et lorem lacinia, elementum 
quam ullamcorper, fermentum ligula. Donec et dictum magna, quis pulvinar nibh


\end{document}

您将看到章节编号正确,并且分页符位于标题之前。当然,这会导致章节起始页中的段落分散。此类问题应在文档的最后一次修订中解决。

在此处输入图片描述


在此处输入图片描述


请注意,很少有字体系列具有粗体小写字母。一般来说,不需要“双重强调”:在小写字母和粗体之间进行选择。

相关内容