Малые заглавные буквы для заголовков на уровне подразделов в классе документов AMSART

Малые заглавные буквы для заголовков на уровне подразделов в классе документов AMSART

В amsartклассе заголовки подразделов выделены жирным шрифтом. Есть ли способ сделать их в \textsc?

решение1

Я собирался порекомендовать вам загрузить пакет sectstyи выдать директиву \subsectionfont{\normalfont\scshape}, но потом вспомнил, что sectstyпакет несовместим с amsartклассом документа. amsartКласс документа определяется \subsectionследующим образом:

\def\subsection{\@startsection{subsection}{2}%
  \z@{.5\linespacing\@plus.7\linespacing}{-.5em}%
  {\normalfont\bfseries}}

Директива \@startsectionпредставляет собой макрос LaTeX очень низкого уровня, который принимает шесть [6!] аргументов. Последний аргумент (по умолчанию: \normalfont\bfseries) относится к форме шрифта и другим характеристикам, используемым для текста заголовков уровня подраздела.

Чтобы достичь желаемой цели форматирования, достаточно добавить следующие инструкции в преамбулу вашего документа:

\usepackage{etoolbox} % for "\patchcmd" macro
\patchcmd{\subsection}{\bfseries}{\scshape}{}{}

Обратите внимание, что вторая строка в предыдущих блоках кода содержит \scshapeвместо \textsc. Первая — это переключатель (как и \bfseries), который делаетнетпринимают аргумент, тогда как последний — это команда, которая принимает аргумент. Обратите внимание, что исходное определение содержит \bfseries, а не \textbf, по той же причине: здесь нужен переключатель.


Полная версия MWE:

введите описание изображения здесь

\documentclass{amsart}
\usepackage{etoolbox}
\patchcmd{\subsection}{\bfseries}{\scshape}{}{}

\begin{document}
\setcounter{section}{1}
\subsection{Hello World}
\end{document}

Связанный контент