titlesec 意外的标签行为

titlesec 意外的标签行为

关于该\titleformat命令,titlesec 手册状态:

在带星号的分段命令版本中,<label>和都会被忽略。<sep>

这意味着如果 ,则不应出现任何标签\titleformat is starred。我尝试了以下操作:

\usepackage[top=0.5cm, left=1.27cm, bottom=0.5cm, right=1.27cm]{geometry}
\usepackage{fontspec}
\usepackage{titlesec}

\setmainfont{Times New Roman}
\newfontfamily\sectionfont{Copperplate Gothic Bold}
\newfontfamily\subsectionfont{Copperplate Gothic Bold}

\titleformat*{\section}{\sectionfont}
\titleformat*{\subsection}{\subsectionfont}

\begin{document}
\section{David Krappenschitz}
\subsection{Poop Research}

\end{document}

然而这会产生以下结果:

在此处输入图片描述

为什么标签没有被抑制,尽管文档似乎表明应该这样做?

答案1

您误解了手册。确实有\titleformat*,但它是完整命令的“缩写形式” \titleformat,您只需指定单个命令,通常是字体。

手册的意思是\section*(或类似的带星号的命令)将忽略<label><sep>参数。

如果您仅想设置字体而不获取数字,请为 设置一个合适的值secnumdepth

\documentclass{article}
%\usepackage[top=0.5cm, left=1.27cm, bottom=0.5cm, right=1.27cm]{geometry}
\usepackage{fontspec}
\usepackage{titlesec}

\setmainfont{Times New Roman}
\newfontfamily\sectionfont{Copperplate}

\titleformat*{\section}{\Large\sectionfont\bfseries}
\titleformat*{\subsection}{\large\sectionfont\bfseries}

\setcounter{secnumdepth}{-1}

\begin{document}
\section{David K}
\subsection{Research}

Text follows.

\end{document}

在此处输入图片描述

答案2

带星号的版本的分段命令\section\subsection 忽略由设置的label和。sep\titleformat

A

\documentclass{article}
\usepackage[top=0.5cm, left=1.27cm, bottom=0.5cm, right=1.27cm]{geometry}
\usepackage{fontspec}
\usepackage{titlesec}

\setmainfont{Times New Roman}
\newfontfamily\sectionfont{Copperplate Gothic Bold}
\newfontfamily\subsectionfont{Copperplate Gothic Bold}

%%\titleformat*{\section}{\sectionfont}
%%\titleformat*{\subsection}{\subsectionfont}

\titleformat{\section}{\sectionfont}{\Large \thesection }{20pt}{\large} 
\titleformat{\subsection}{\subsectionfont}{\normalsize \thesection }{20pt}{\small} 

\begin{document}
    
    \section{David Krappenschitz 1}
    
    \subsection{Poop Research 1}
    
    \bigskip
    
    \section*{David Krappenschitz with *}
    
    \subsection*{Poop Research with *}
    
\end{document}

相关内容