如何在 \subparagraph 标题后获取新行?

如何在 \subparagraph 标题后获取新行?

是否有默认的方法来更改标题的样式\subparagraph,即在标题后添加新行?有没有办法做到这一点而不\renewcommand(更改其他样式)——如果没有,如何\renewcommand正确地做到这一点?

答案1

您没有指定文档类,因此我假设您目前使用的是标准类。标题安全\section包提供了一种改变& 友元定义的方法。

\documentclass{article}

\usepackage{titlesec}

% Definition of \subparagraph emulating that of the standard classes
% \titleformat{\subparagraph}[runin]
%     {\normalfont\normalsize\bfseries}{\thesubparagraph}{1em}{}
% \titlespacing*{\subparagraph}{\parindent}{3.25ex plus 1ex minus .2ex}{1em}

% Definition of \subparagraph starting new line after heading
\titleformat{\subparagraph}
    {\normalfont\normalsize\bfseries}{\thesubparagraph}{1em}{}
\titlespacing*{\subparagraph}{\parindent}{3.25ex plus 1ex minus .2ex}{.75ex plus .1ex}

\begin{document}

\subparagraph{foo}

Some text.

\end{document}

编辑:Herbert 的回答提醒我,小段标题后的垂直空间应该是可伸缩的。代码示例已相应更改。

答案2

\documentclass{article}
\makeatletter
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
    {3.25ex \@plus1ex \@minus .2ex}%
    {0.75ex plus 0.1ex}% space after heading
    {\normalfont\normalsize\bfseries}}
\makeatother

\begin{document}

\subparagraph{foo}
text after heading

\end{document}

相关内容