KOMA-Script:缩进段落但不缩进标题

KOMA-Script:缩进段落但不缩进标题

我想增加段落左边距,但保留标题。它应该看起来类似于 hitec 类的布局。

我正在使用该scrartcl课程。到目前为止,我尝试过

\setlength{\leftskip}{3cm}

文本结果看起来不错,但例如列表未缩进。正确的(KOMA-Script)方法是什么?

答案1

不幸的是,问题中没有 MWE。所以我不知道使用了哪个 KOMA-Script 类,也不知道文档是单面的还是双面的。所以这里有一个scrbook使用geometry和的双面示例scrlayer-scrpage。如果你使用过时的包scrpage2fancyhdr(不建议与 KOMA-Script 一起使用),请参阅这里

\documentclass{scrbook}[2015/10/03]
\usepackage{blindtext}% dummy text
\usepackage[T1]{fontenc}

\usepackage{geometry}
\usepackage{calc}
\newcommand\LeftMargin{3cm}
\geometry{
  layoutsize={21cm-\LeftMargin,27.9cm},
  layoutoffset={\LeftMargin,0cm},
  reversemarginpar,
  inner=2cm,
  outer=4cm,
  top=3cm,
  bottom=4cm,
  heightrounded,
  %showframe% to show the pagelayout
}

\makeatletter
\renewcommand{\chapterlinesformat}[3]{%
  \hspace*{-\LeftMargin}%
  \parbox[t]{\textwidth+\LeftMargin}{\raggedchapter\@hangfrom{#2}{#3}}%
}
\renewcommand{\sectionlinesformat}[4]{%
  \hspace*{-\LeftMargin}%
  \parbox[t]{\textwidth+\LeftMargin}{\raggedsection\@hangfrom{#3}{#4}}%
}
\makeatother

\usepackage[
  headwidth=\the\textwidth+\LeftMargin:-\LeftMargin:\LeftMargin% enlarge the headwidth
  ,headsepline,plainheadsepline% to make the header visible
  ,footwidth=head:-\LeftMargin:\LeftMargin% enlarge the footwidth
  ,footsepline,plainfootsepline% to make the footer visible
]{scrlayer-scrpage}

\begin{document}
\tableofcontents
\blinddocument
\end{document}

在此处输入图片描述

如果您正在使用scrartcl删除重新定义的线条\chapterlinesformat并更改geometry设置,因为scrartcl是片面的。

在此处输入图片描述

代码:

\documentclass{scrartcl}[2015/10/03]
\usepackage{blindtext}% dummy text
\usepackage[T1]{fontenc}

\usepackage{geometry}
\usepackage{calc}
\newcommand\LeftMargin{3cm}
\geometry{
  layoutsize={21cm-\LeftMargin,27.9cm},
  layoutoffset={\LeftMargin,0cm},
  reversemarginpar,
  left=3cm,
  right=3cm,
  top=3cm,
  bottom=4cm,
  heightrounded,
  %showframe% to show the pagelayout
}

\makeatletter
\renewcommand{\sectionlinesformat}[4]{%
  \hspace*{-\LeftMargin}%
  \parbox[t]{\textwidth+\LeftMargin}{\raggedsection\@hangfrom{#3}{#4}}%
}
\makeatother

\usepackage[
  headwidth=\the\textwidth+\LeftMargin:-\LeftMargin:\LeftMargin% enlarge the headwidth
  ,headsepline,plainheadsepline% to make the header visible
  ,footwidth=head:-\LeftMargin:\LeftMargin% enlarge the footwidth
  ,footsepline,plainfootsepline% to make the footer visible
]{scrlayer-scrpage}

\begin{document}
\tableofcontents
\blinddocument
\end{document}

答案2

我使用 enumitem 包解决了我的问题。

\RequirePackage{calc}
\newlength{\textleftmargin}
\setlength{\textleftmargin}{3cm}
\RequirePackage{enumitem}
\setlength{\leftskip}{\textleftmargin}
\setlist[itemize]{leftmargin=\textleftmargin}
\setlist[enumerate]{leftmargin=\textleftmargin}
\setlist[description]{leftmargin=\textleftmargin+1cm,labelindent=\textleftmargin}

相关内容