![在 scrartcl 中创建 \part](https://linux22.com/image/252792/%E5%9C%A8%20scrartcl%20%E4%B8%AD%E5%88%9B%E5%BB%BA%20%5Cpart.png)
我正在使用scrartcl
众所周知的KOMA 脚本(对于那些了解它的人来说)。正如你所知,文章类有一个名为抽象的。太棒了,我喜欢这个,我也用它。然而,我实际上正在做(我在这里问过很多关于这个问题的问题,很抱歉我没有真正回答问题,因为我比那些真正能回答这些问题的人更无能。也许不久之后我就会学到更多!)
我有一个名为的文件Puzzles.tex
,它基本上是每个拼图的模板,位于一个<description of puzzle>.tex
文件中。太棒了!
但是,这些谜题也有不同的类别。我希望在它们之间有一个页面,上面写着:苹果!!针对与苹果相关的问题。页面上可以命名为 I.APPLES!!,其余部分为空的页面样式(或其他)。以下文件包括在内,标题为 a section
,部分为subsections
。
概括:
因此,基本上问题是:我如何\part
为 scrartcl 类创建一个?我也想将它放在目录中。另一个选择是在书籍类中实现摘要(然后执行章节 -> 章节和小节 -> 章节),但使用书籍类似乎很奇怪,因为我可能只有不到 30 页。
任何能满足我需求的选项都很有趣,即使是那些我没有提到的选项。我的无知可能导致我错过更好的解决方案。
答案1
该命令\part
已在scrartcl
文档类中实现,因此您只需重新定义此命令的行为方式即可。您可以重新定义\partheadstartvskip
、\partheadmidtvskip
和,\partheadstartvskip
以便使用例如页面样式在自己的页面中排版标题\part
。重新定义(用于使各部分的标题不规则)为,您将获得居中标题:scrartcl
empty
\raggedpart
scrartcl.cls
\centering
\documentclass{scrartcl}
\renewcommand\partheadstartvskip{\clearpage\null\vfil}
\renewcommand\partheadmidvskip{\par\nobreak\vskip 20pt\thispagestyle{empty}}
\renewcommand\partheadendvskip{\vfil\clearpage}
\renewcommand\raggedpart{\centering}
\begin{document}
\tableofcontents
\part{Test Part}
\section{Test Section}
\end{document}
前两页的图片:
由于已将修改后的页面样式\part
声明为空,因此将与 关联的目录条目的页码设置为页码是没有意义的\part
;若要隐藏目录中的页码,您可以在序言中添加以下几行:
\usepackage{etoolbox}
\makeatletter
\patchcmd{\l@part}{\hss#2}{}{}{}
\makeatother
如果要从标题中删除“部分”一词,只需在序言中添加以下行
\renewcommand*\partformat{\thepart\autodot}
以下示例说明了建议的修改:
\documentclass{scrartcl}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\l@part}{\hss#2}{}{}{}
\makeatother
\renewcommand\partheadstartvskip{\clearpage\null\vfil}
\renewcommand\partheadmidvskip{\par\nobreak\vskip 20pt\thispagestyle{empty}}
\renewcommand\partheadendvskip{\vfil\clearpage}
\renewcommand\raggedpart{\centering}
\renewcommand*\partformat{\thepart\autodot}
\begin{document}
\tableofcontents
\part{Apples}
\section{Test Apple Section}
\end{document}
前两页的图片如下: