创建与节标题宽度相同的节规则

创建与节标题宽度相同的节规则

我想创建类似这样的内容:期望的外观

现在,我已看到一个办法适用于提问者的例子环境(使用\predisplaysize)。但是,我想要的解决方案有点不同。特别是,我尝试使用\titleformat

\documentclass[12pt]{article}

\usepackage{xcolor, lipsum}
\usepackage[calcwidth]{titlesec}

\definecolor{carmine}{rgb}{0.68, 0.0, 0.09}

\titleformat{\section}[hang]{\Large\sffamily\bfseries}
{\color{carmine}\S$\,$\thesection}{0.5em}{\color{black}}
%This creates a rule that matches the full page's width, rather than the title's
[\vspace{-1.5em}\rule{\textwidth}{0.2pt}] 

\begin{document}
\section{Introduction}
\lipsum[1-1]
\end{document}

这看起来像:

当前尝试

到目前为止,我尝试使用titlesec都没有成功。当用作\titlewidth的参数时\rule,我发现下划线完全消失了。此外,文档绘制一条(全页宽度的)规则多于部分名称。

有没有办法在与标题宽度相同的部分标题下创建规则?

答案1

这不是很好的风格,但我们开始吧......

文档提到,使用该hang选项(顺便说一下,这是默认选项)可能会出现标题测量错误的情况。您可以使用block与 hang 相同的样式,只要您没有多行标题即可。

另外,我建议使用[T1]字体编码,因为这将加载cmsuper具有bold版本的§,并且我不认为您想将规则提高 1.5em:这会使其穿过标题。 1.5ex更为明智。

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{xcolor, lipsum}
\usepackage[calcwidth]{titlesec}

\definecolor{carmine}{rgb}{0.68, 0.0, 0.09}

\titleformat{\section}[block] {\Large\sffamily\bfseries}
{\color{carmine}\S\,\thesection}{0.5em}{\color{black}}
%This creates a rule that matches the full page's width, rather than the title's
 [\vspace{-1.5ex}\rule{\titlewidth}{0.2pt}]

\begin{document}

\section{Introduction.}

\lipsum[1-1]

\end{document} 

在此处输入图片描述

笔记: 如果您确实有多行章节标题,那么有一种解决方法可以使标题与样式一致block

相关内容