我mwrep
在文档中使用 class 并尝试使用 自定义章节标题titlesec
。它对于章节和小节有效,但对于章节无效。
这里我读到“该类mwrep
使用非标准方式来格式化其分段命令”。
是否仍然可以使用它titlesec
来为章节设置样式?还是我应该忘掉它并寻找其他解决方案?
我的 MWE:
\documentclass[12pt,a4paper,polish]{mwrep}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{titlesec}
\titleformat{\chapter}[hang]
{\LARGE\scshape\bfseries}
{\thechapter}
{2pc}
{}
\titleformat{\section}[hang]
{\large\scshape\rmfamily}
{\thesection.}
{1em}
{\MakeLowercase}
\titleformat{\subsection}[hang]
{\normalsize\itshape\rmfamily}
{\thesubsection.}
{1em}
{}
\begin{document}
\chapter{Lorem}
\section{Ipsum}
\subsection*{Dolor}
\end{document}
答案1
供本章使用
\SetSectionFormatting[breakbefore,wholewidth]{chapter}
{56pt}
{\FormatBlockHeading{\LARGE\scshape\bfseries}}
{24pt}
对于section
并且subsection
还有宏,这样你就不需要titlesec
包
答案2
mwrep
因此,我最终阅读了(实际上)的文档mwcls
并发现它SetSectionFormatting
比我想象的更灵活。
通过访问\HeadingNumber
,\HeadingText
您可以编写例如
\SetSectionFormatting[breakbefore,wholewidth]{chapter}
{56pt}
{\large\textbf{\ifHeadingNumbered
\llap{\fbox{\strut\HeadingNumber.}\enspace}\fi
\HeadingText}
}
{24pt}
将章节编号框挂在边缘
或者
\SetSectionFormatting[breakbefore,wholewidth]{chapter}
{56pt}
{\normalfont\large{
\ifHeadingNumbered\HeadingNumber.\enspace\fi
\MakeUppercase{\textls[150]{\HeadingText}}
}\vspace{1em}\hrule
}
{24pt}
将章节标题大写,并增加字母间距(textls
来自microtype
包)和下面的水平线。