我终于设法在这里注册了一个帐户,但我之前在没有注册帐户的情况下问过 2 个问题 :) 好的,我的下一个问题如下:我正在使用类scrreprt
和提供的常用命令来创建标题\chapter
等。但现在我想在文本中包含自定义标题,实际上非常简单,但以宏或预定义命令的形式,因为我会经常使用它。(也许我以后也需要更复杂的)所以我希望它看起来像下面这样:
text...then some space
heading in boldface
some space...then text...
even more text...
抱歉,这个问题可能有点微不足道,但我对 TeX 还很陌生。同样在同样的背景下,我想自定义 enumerate 和 itemize 的外观。我需要问:我应该创建一个新命令让它看起来像我喜欢的那样,还是最好更改现有的命令?如果后者是正确的,我应该在哪里查看?例如,我想知道如何更改缩进、环境前后的空格等。
答案1
一般来说,您决定创建一个新的宏来逻辑地标记稿件的某个部分是完全合理的。不过我想提请您注意\paragraph
许多 LaTeX 类提供的宏。它完全符合您的要求(:normal 字体大小和粗体)。如果您使用的类没有它,或者您想创建另一个 - 尽管它已经存在,您可以使用内部\@startsection
。语法是:
\makeatletter
\newcommand{\TomMsec}{\@startsection{TomMsec}{4}{\z@}%
{3.25ex \@plus1ex \@minus.2ex}%
{-1em}%
{\normalfont\normalsize\bfseries}}
\makeatother
关于您可以做的列表定制
\usepackage{etoolbox}
\preto{\itemize}{\vspace{.5em}} %Adds 0.5em vertical space before the environment
\appto{\enditemize}{\vspace{1em}} %Adds 1em vertical space after the environment
对于itemize
环境。 (它与环境类似enumerate
。)对于列表项的缩进,您可以修补\@item
:
\makeatletter
\let\saved@@item\@item
\renewcommand{\@item}[1][]{\setlength{\itemindent}{3em}\saved@@item[#1]}
\makeatother