Titlesec 和 ACM 会议格式:如何正确设置章节的大写字母

Titlesec 和 ACM 会议格式:如何正确设置章节的大写字母

ACM 会议格式要求前三个部分“类别和主题描述符”、“一般术语”和“关键词”是特殊部分,标题为小写。所有其他部分都应大写。在提供的 sig-alternate 文档模板中这里这种特殊的大写方案是通过定义命令\catagories\terms和来实现的\keywords

\def\keywords{\if@twocolumn
\section*{Keywords}
\else \small
\quotation
\fi}

一旦我将 titlesec 包包含到我的论文中,所有章节标题都会变成小写。我可以使用以下命令将所有章节标题变为大写:\titleformat{\section}{\secfnt\uppercase}{\thesection}{1em}{}其中\secfnt是 ACM 模板中定义的特殊章节字体。所有章节都变为大写,因为等的定义\keywords只是特殊定义的章节(参见上面的代码块)。

我的问题是,有人知道如何在使用 tilesec 包的同时实现 ACM 所需的特殊大写方案吗?或者有没有不使用 tilesec 的替代方法来减少节之间的间距?作为参考,.cls 模板文件中实现节大写的方式如下:

\def\section{%
     \@startsection{section}{1}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@}% GM
    {4\p@}{\baselineskip 14pt\secfnt\@ucheadtrue}%
}

答案1

您报告的定义指出,节标题前的间距为 10pt,可扩展至 14pt 并可收缩至 8pt(第四个参数\@startsection),标题后的间距为 4pt(第五个参数)。

中的负值-10\p@ \@plus -4\p@ \@minus -2\p@告诉 LaTeX 下面的段落不应该缩进;第五个参数中的正值表示这个分段级别是“显示的”而不是“运行的”。

因此,如果您希望章节标题后没有空格,并减少上面的空间,您可以执行以下操作

\makeatletter
\def\section{%
  \@startsection{section}{1}{\z@}%
    {-6\p@ \@plus -2\p@ \@minus -1\p@}%Caleb Serafy
    {1sp}%Caleb Serafy
    {\baselineskip 14pt\secfnt\@ucheadtrue}%
}
\makeatother

请注意,对于第五个参数,我没有说0pt(或等价物0\p@\z@某种形式),而是说(最小正长度,肉眼无法察觉)。我已经用你的名字标记了修改,GM 在更改样式表中的设置时也这样做了。\makeatletter1sp

然而,我认为会议组织者不会对此感到高兴,因为他们提供样式表只是为了确保论文的外观统一。

答案2

这对我有用

\makeatletter
\renewcommand{\section}{\@startsection {section}{1}{\z@}%
         {-0.1ex \@plus -.2ex}%
         {0.1ex \@plus .2ex}%    
         {\normalfont\Large\bfseries\MakeTextUppercase}}
\makeatother

相关内容