可能重复:
更改文章文档类型的章节标题样式
我正在尝试取消文档中一组子节的标题的划线。为了实现此目的,我定义了一个封装此子节格式的新环境。
我的问题是我无法实现对小节标题文本加下划线。我不想使用该包,sectsty
因为如果我这样做,我会与使用该包完成的其他定义发生冲突titlesec
。
\newenvironment{UnderlineSubSection}{
\titleformat{\subsection}
{\normalfont\sffamily\bfseries\color{cyan}}
{\thesection}{1em}{}
}{}
答案1
将其定义为命令,就像默认子部分一样。除了包之外,您soul
还可以使用ulem
\documentclass[a4paper,12pt]{report}
\usepackage{soul}
\makeatletter
\def\UnderlineSubSection{\@ifnextchar*\UnderlineSubSection@i\UnderlineSubSection@ii}
\def\UnderlineSubSection@i*#1{\subsection*{\ul{#1}}}
\def\UnderlineSubSection@ii{\@ifnextchar[\UnderlineSubSection@iii\UnderlineSubSection@iv}
\def\UnderlineSubSection@iii[#1]#2{\subsection[#1]{\ul{#2}}}
\def\UnderlineSubSection@iv#1{\subsection{\ul{#1}}}
\makeatother
\begin{document}
\tableofcontents
\section{foo}
\subsection{foo}
\UnderlineSubSection{baz}
\UnderlineSubSection*{foobar}
\UnderlineSubSection[foobarbaz]{foo\_bar\_baz}
\end{document}