在节后添加冒号或破折号

在节后添加冒号或破折号

我使用包和命令更改了格式subsubsection以删除后面的换行符titlesec

\titleformat{\subsubsection}[runin]{\normalfont\bfseries}{\thesubsubsection.}{3pt}{}

完整代码:

\documentclass{article}
\usepackage{titlesec}

\titleformat{\subsubsection}[runin]{\normalfont\bfseries}{\thesubsubsection.}{3pt}{}
\begin{document}

\section{Section one}
Some text
\subsection{Subsection one one}
Some text
\subsubsection{Subsubsection one one one}
This is subsubsection. Blah blah blah.

\end{document}

这将生成小节标题,紧接着正文。现在,我想在标题后添加冒号(或破折号)。例如

1.1.1. 子节 111:这是子小节。等等等等。

有没有办法做到这一点?

答案1

titleformat在代码之后使用可选参数:

\titleformat{\subsubsection}[runin]{\normalfont\bfseries}{\thesubsubsection.}{3pt}{}[:]   %%<--- this one

代码:

\documentclass{article}
\usepackage{titlesec}

\titleformat{\subsubsection}[runin]{\normalfont\bfseries}{\thesubsubsection.}{3pt}{}[:]
\begin{document}

\section{Section one}
Some text
\subsection{Subsection one one}
Some text
\subsubsection{Subsubsection one one one}
This is subsubsection. Blah blah blah.

\end{document}

在此处输入图片描述

答案2

另一个答案仅适用于一些预定义形状(例如,runin如问题中所示),但在某些情况下会失败(display,或block,参见底部的示例)。

进行此类添加的正确方法(请参阅titlesec文档,第节4.4 在章节标题后添加一个点,第 12 页)是定义一个命令,该命令带有一个强制参数,该参数将用作 的最后一个参数\titleformat。举个小例子:

\documentclass{article}
\usepackage{titlesec}

\newcommand\colonafter[1]{#1:}
\titleformat{\subsubsection}[runin]
  {\normalfont\bfseries}{\thesubsubsection.}{3pt}{\colonafter}

\begin{document}

\section{Section one}
Some text
\subsection{Subsection one one}
Some text
\subsubsection{Subsubsection one one one}
This is subsubsection. Blah blah blah.

\end{document}

在此处输入图片描述

正如我已经提到的,另一个答案的方法在 OP 的情况下有效,因为runin使用了该格式,但是在那里提出的解决方案对于其他形状将失败,如下例所示:

\documentclass{article}
\usepackage{titlesec}

\titleformat{\subsubsection}[display]
  {\normalfont\bfseries}{\thesubsubsection.}{3pt}{}[:]

\begin{document}

\section{Section one}
Some text
\subsection{Subsection one one}
Some text
\subsubsection{Subsubsection one one one}
This is subsubsection. Blah blah blah.

\end{document}

导致错误的输出:

在此处输入图片描述

相关内容