章节标题,文本嵌入水平线中

章节标题,文本嵌入水平线中

我想创建如下所示的章节标题:

-------------------- Some title --------------------

因此,中间嵌入了一条水平线,文本。我应该为此使用 titlesec 还是 fancyhdr 包?有人有例子吗?

答案1

以下是使用以下方法之一titlesec。垂直居中的水平\hrulefill调用\Vhrulefill取自垂直居中的水平规则填充了行的其余部分?

在此处输入图片描述

\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage[explicit]{titlesec}% http://ctan.org/pkg/titlesec
\def\Vhrulefill{\leavevmode\leaders\hrule height 0.7ex depth \dimexpr0.4pt-0.7ex\hfill\kern0pt}
\titleformat{\section}{\bfseries\large}{}{0pt}{\noindent\Vhrulefill~\thesection\quad#1~\Vhrulefill}
\begin{document}
\section{First section}
\lipsum[1]
\section{Second section}
\lipsum[2]
\end{document}​

指定包选项允许您通过中的参数explicit更好地控制章节标题的位置。当然,从这个意义上讲,您还可以在章节和水平规则之间添加不同的空间(我在我的示例中使用了)。但是,这种修改(以及章节格式)可能都取决于个人喜好。我还使用了与 中定义的不同的章节标题#1\titleformat~\bfseries\largearticle.cls。以下是默认设置:

  • \section\normalfont\Large\bfseries
  • \subsection\normalfont\large\bfseries
  • \subsubsection\normalfont\normalsize\bfseries
  • \paragraph\normalfont\normalsize\bfseries
  • \subparagraph\normalfont\normalsize\bfseries

\quad是部分编号/计数器和标题/标题之间的常规跳过。它被定义为水平跳过1em,与所用的字体大小有关 - 这是一件好事。最后,如果您想要在基线级别使用常规规则,请使用\hrulefill而不是\Vhrulefill。当然,所描述的任何其他提供垂直居中的方法\hrulefill也应该有效。

相关内容