自定义距离数 \subsection

自定义距离数 \subsection

早上好。我想在节号和字符串之间添加 2 厘米的空格,但新命令\renewcommand{\thesubsection}{\hspace{2cm}}不起作用。一切都消失了。如果我改用%first,一切都会正常。我哪里做错了?谢谢。

源文件是:

\documentclass[a4paper,12pt]{article}
\usepackage{lipsum}

\renewcommand{\thesubsection}{\hspace{2cm}}
\newcommand{\upsecnum}{\refstepcounter{section}}

\begin{document}
\upsecnum
\subsection{Scene}
\lipsum[2]
\subsection{Scene}
\lipsum[2]
%change from Act 1 to Act 2
\upsecnum
\subsection{Scene}
\lipsum[2]
\end{document}

答案1

\thesubsection控制编号本身的显示方式,因此通过重新定义它,\hspace{2cm}您可以有效地删除数字的显示。

类似这样的方法可能对你更有帮助:

\renewcommand{\thesubsection}{\thesection.\arabic{subsection}\hspace{2cm}}

正确编号的部分

答案2

如果你不使用\section,而只使用小节,你可以更简单地修改\@seccntformat。例如,修改\thesubsection会对目录造成不良影响。

\documentclass[a4paper,12pt]{article}
\usepackage{lipsum}

\newcommand{\upsecnum}{\refstepcounter{section}}
\makeatletter
\renewcommand{\@seccntformat}[1]{%
  \csname the#1\endcsname\hspace{2cm}% original has \quad
}
\makeatother

\begin{document}

\upsecnum
\subsection{Scene}

\lipsum[2]

\subsection{Scene}

\lipsum[2]

%change from Act 1 to Act 2
\upsecnum
\subsection{Scene}

\lipsum[2]

\end{document}

在此处输入图片描述

请注意,相同的格式也适用于\section

我还可以推荐一种不同的文本输入方式。如果需要,使用更语义化的命令可以更轻松地修改文本的外观。

\documentclass[a4paper,12pt]{article}
\usepackage{lipsum}

\NewDocumentCommand{\scene}{t+ m}{%
  \IfBooleanT{#1}{\stepcounter{section}}%
  \subsection{#2}%
}

\makeatletter
\renewcommand{\@seccntformat}[1]{%
  \csname the#1\endcsname\hspace{2cm}% original has \quad
}
\makeatother

\begin{document}

\scene+{Scene}
\lipsum[2]
\scene{Scene}
\lipsum[2]

%change from Act 1 to Act 2

\scene+{Scene}
\lipsum[2]

\end{document}

相关内容