章节标题和编号之间没有空格

章节标题和编号之间没有空格

我希望我的章节标题直接显示在章节编号之后,中间没有空格。无论编号是多少,都应该如此。如下所示:

1. A section heading
2. Another section heading
...
1526. Yet another section

目前我正在titlesec使用

\titleformat{\section}{\large\bfseries}{\makebox[1pt][l]{\thesection}}{12pt}{}

但这会导致标题和大数字重叠。

答案1

更新:有一个更简单的解决方案titlesec\thetitle命令分别是\thesection\thesubsection等。标准类中的默认值是:

\titlelabel{\thetitle\quad}

这意味着在数字后面1em插入一个空格;要改变这种行为就足以重新定义\thetitle添加一个点然后添加一个空格:

\titlelabel{\thetitle.\ }

完整示例:

\documentclass{article}
\usepackage{titlesec}

\setcounter{secnumdepth}{5}% just for the example

\titlelabel{\thetitle.\ }

\begin{document}

\section{Test Section}
\subsection{Test Subsection}
\subsubsection{Test Subsubection}
\paragraph{Test Paragraph}
\subparagraph{Test Subparagraph}

\section*{Test Section}
\subsection*{Test Subsection}
\subsubsection*{Test Subsubection}
\paragraph*{Test Paragraph}
\subparagraph*{Test Subparagraph}

\end{document}

在此处输入图片描述

一种可能性是使用titlesec影响包\section通过\subparagraph

\documentclass{article}
\usepackage[explicit]{titlesec}

\setcounter{secnumdepth}{5}% just for the example

\titleformat{\section}
  {\normalfont\Large\bfseries}{\thesection.}{0em}{~#1}
\titleformat{name=\section,numberless}
  {\normalfont\Large\bfseries}{}{0em}{#1}
\titleformat{\subsection}
  {\normalfont\large\bfseries}{\thesubsection.}{0em}{~#1}
\titleformat{name=\subsection,numberless}
  {\normalfont\large\bfseries}{}{0em}{#1}
\titleformat{\subsubsection}
  {\normalfont\normalsize\bfseries}{\thesubsubsection.}{0em}{~#1}
\titleformat{name=\subsubsection,numberless}
  {\normalfont\normalsize\bfseries}{}{0em}{#1}
\titleformat{\paragraph}[runin]
  {\normalfont\normalsize\bfseries}{\theparagraph.}{0em}{~#1}
\titleformat{name=\paragraph,numberless}[runin]
  {\normalfont\normalsize\bfseries}{}{0em}{#1}
\titleformat{\subparagraph}[runin]
  {\normalfont\normalsize\bfseries}{\thesubparagraph.}{0em}{~#1}
\titleformat{name=\subparagraph,numberless}[runin]
  {\normalfont\normalsize\bfseries}{}{0em}{#1}

\begin{document}

\section{Test Section}
\subsection{Test Subsection}
\subsubsection{Test Subsubection}
\paragraph{Test Paragraph}
\subparagraph{Test Subparagraph}

\end{document}

我无法上传图像;稍后我会上传。

答案2

最简单的方法,不需要任何包,就是重新定义\@seccntformat,通常\quad在节号后面添加:

\documentclass{article}
\usepackage[pass,showframe]{geometry}
\makeatletter
\def\@seccntformat#1{\csname the#1\endcsname.\ }
\makeatother

\setcounter{secnumdepth}{10}

\begin{document}
\section{Test Section}
\subsection{Test Subsection}
\subsubsection{Test Subsubection}
\paragraph{Test Paragraph}
\subparagraph{Test Subparagraph}
\section*{Test Section}
\subsection*{Test Subsection}
\subsubsection*{Test Subsubection}
\paragraph*{Test Paragraph}
\subparagraph*{Test Subparagraph}
\end{document}

点后的命令\可确保间距不受间距因子的影响;因此\nonfrenchspacing,如果 LaTeX 中的默认设置有效,则间距不会增加:它是当前字体中的正常单词间间距。

我只使用了geometry添加框架;的设置secnumdepth仅用于演示目的,我不建议在分段单元的编号方面进行太深入的研究。

在此处输入图片描述

相关内容