\titleformat(在 titlesec 中)不显示章节的任何水平线

\titleformat(在 titlesec 中)不显示章节的任何水平线

我一直在尝试做一个简单的事情titlesec:在每个章节下画一条水平线。有很多教程、文档和问题TeX解释了如何做到这一点。但是……这些答案都没有给我任何帮助。以下是我尝试过的解决方案:

  1. 使用 titlesec 在章节标题后添加规则
  2. 章节条目上方和下方有两条水平线
  3. 行间标题

但在每种情况下,编译后的 pdf 都会准确显示它所显示的内容,而无需使用\titleformat。我当前的序言使用titlesec如下:

\documentclass[11pt,oneside]{book}
\usepackage{titlesec}
% Below "\section" can be replaced with "\subsection" and "\subsubsection"
% in order to customize the corresponding headings. "bch" - Bitstream
% Charter, "b" - bold.
\titleformat{\section}[hang]
{\usefont{T1}{bch}{b}{n}\selectfont}
{}    % label
{0em} % horizontal separation between label and title body
{\hspace{-0.4pt}\Large \thesection\hspace{0.6em}} % before-code
[] % after-code

\titleformat
{\chapter}                       % command
[display]                        % shape
{\normalfont\huge\bfseries}      % format
{\chaptertitlename\ \thechapter} % label
{20pt}                           % sep
{\Huge}[\vspace{2ex}\titlerule]  % before-code

这只是我尝试过的至少十几种变体之一(包括titlesec 文档,包括{name=\chapter,numberless}第 3.8 节中解释的方法,但我所能展示的只是这个屏幕截图:

在此处输入图片描述

如您所见,在“摘要”一章的上方、下方或附近没有水平线。文档现在几乎是空的。序言结束后,我只有

\begin{document}
\maketitle
\chapter*{Abstract}
Lorem Ipsum etc. etc.
\end{document}

我希望我能够提供 MWE。请让我知道我在这里做错了什么,以至于即使是最基本的示例也没有产生任何结果。

答案1

您已定义编号章节的格式并使用未编号章节Abstract。在这种情况下,还需要定义未编号章节的格式才能获得规则。

\documentclass[11pt,oneside]{book}
\usepackage{titlesec}
% Below "\section" can be replaced with "\subsection" and "\subsubsection"
% in order to customize the corresponding headings. "bch" - Bitstream
% Charter, "b" - bold.
\titleformat{\section}[hang]
{\usefont{T1}{bch}{b}{n}\selectfont}
{}    % label
{0em} % horizontal separation between label and title body
{\hspace{-0.4pt}\Large \thesection\hspace{0.6em}} % before-code
[] % after-code

\titleformat
{\chapter}                       % command
[display]                        % shape
{\normalfont\huge\bfseries}      % format
{\chaptertitlename\ \thechapter} % label
{20pt}                           % sep
{\Huge}[\vspace{2ex}\titlerule]  % before-code

\titleformat
{name=\chapter,numberless}                       % command
[display]                        % shape
{\normalfont\huge\bfseries}      % format
{} % label
{0pt}                           % sep
{\Huge}[\vspace{2ex}\titlerule]  % before-code    %% adjust 2ex here as you want.

\begin{document}
%\maketitle
\chapter*{Abstract}
Lorem Ipsum etc. etc.
\end{document}

在此处输入图片描述

我没有调整间距。请使用\titlespacing* 默认设置进行调整

\titlespacing*{\chapter} {0pt}{50pt}{40pt}

请使用以下方法对未编号的章节执行此操作

\titlespacing*{name=\chapter,numberless} {0pt}{50pt}{40pt}

相关内容