【问题标题】:How to underline section-headings in LaTeX?如何在 LaTeX 中给章节标题加下划线?
【发布时间】:2010-11-26 10:18:59
【问题描述】:

编辑:正如我在第一个答案中看到的,下划线是错误的词。我想在章节标题下有一行,将标题与以下文本分开。

我想用一条水平线将部分标题与以下文本分开。目前我使用以下内容:

\newcommand{\tmpsection}[1]{}
\let\tmpsection=\section
\renewcommand{\section}[1]{\tmpsection{#1}\hrule\nobreak}

但这会产生一条线,离节标题太远,离后面的文本太近。有人有更好的主意吗?

【问题讨论】:

  • 由于每个类的部分命令格式不同,您始终可以复制您正在使用的类并重新定义\section 命令以将hrule 放在正确的位置。
  • 正如你所说,每个班级的格式都不同。我更喜欢一个解决方案,我可以在不同的项目中使用它,即使你改变了特定的东西(例如从书切换到 scrbook)也能工作。这可能会在几年后由不知道重新定义部分的其他人发生。这就是为什么我想使用更通用的解决方案。
  • 这个问题似乎跑题了,因为它是关于 LaTeX 的,这在 tex.stackexchange.com 上更合适。

标签: formatting latex tex heading


【解决方案1】:

像这样重写你的命令应该可以解决问题:

\newcommand{\tmpsection}[1]{}
\let\tmpsection=\section
\renewcommand{\section}[1]{\tmpsection{\underline{#1}}}

这将评估为

\section { \underline {#1} }

这反过来会产生带下划线的部分标题:)

【讨论】:

  • 它还会在目录中的部分名称下划线,这可能不是你想要的。
  • 我知道我的问题问得很糟糕。从这个意义上说,我不想要下划线,我真的想要一条将标题与以下文本分开的线。
【解决方案2】:

您可以使用sectsty package 中的\sectionrule 命令执行此操作。

【讨论】:

  • sectsty 做我想做的事,但我还有另一个问题:我有一本书 (scrbook-documentclass) 并使用命令 \part。这不再适用于 sectsty。有什么建议吗?
【解决方案3】:

我听说titlesecsectsty 包更强大,所以我刚刚使用它。您可以使用以下方法将水平线放在节标题之前:

\usepackage{titlesec}
\titleformat{\section}{\large\bfseries}{\thesection}{1em}{\hrule}

或者你可以在 newcommand 的帮助下把它放在后面。请参阅titlesec manual 的第 4.4 节。

【讨论】:

    【解决方案4】:

    你可以看看 LaTeX \rule 命令:

    \rule[raise-height]{width}{thickness}
    

    但是,这是一个内联(水平)命令,因此您必须使用一些技巧才能将其置于正确的位置和大小(\noindent\textwidth 应该会有所帮助)。

    否则,您可以使用以下纯 TeX

    \smallskip
    \hrule height 2pt
    \smallskip
    

    它并不真正适合 LaTeX 语法,但它就像一个魅力,并且保证跨越整个文本宽度。

    【讨论】:

      【解决方案5】:

      另一种可能是:

      \begin{center}
      \line(1,0){400}
      \end{center}
      

      【讨论】:

        【解决方案6】:

        使用titlesec 包,您可以在\titleformat 命令的最后添加方括号以在节标题之后插入一些内容(请参阅titlesec 文档的第3.1 节)。例如:

        \titleformat{\section}{\normalfont\Large\bfseries}{\thesection}{1em}{}[\hrule]
        

        【讨论】:

          猜你喜欢
          • 2011-02-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-01-19
          • 2023-01-30
          • 1970-01-01
          • 2017-12-04
          • 1970-01-01
          相关资源
          最近更新 更多