如何在左边距对齐章节标题和列表环境?

如何在左边距对齐章节标题和列表环境?

我想知道您是否能帮我解决一些对齐问题。我在这里和谷歌上都搜索过,但还没有找到合适的解决方案。

这就是我所拥有的(LaTeX 默认):

1 First section

  1. Apple
  2. Banana
  3. Cherry

1.1 First subsection

  - Foo
  - Bar

这就是我要的:

  1  First section

  1. Apple
  2. Banana
  3. Cherry

1.1  First subsection

  -  Foo
  -  Bar

注意第二个例子中所有内容在页边距中是如何排列的。我认为这使文档的节奏感更好。

我想要的一个很好的例子可以在文档microtype包裹。

答案1

下面的解决方案使用enumitem包来定制enumerateitemize环境,使用titlesec包来定制sectionsubsection标题。

截屏

请注意,我已经加载了geometry包来showframe=true显示页面边界的位置。

\documentclass{article}

\usepackage[showframe=true]{geometry}
\usepackage[explicit]{titlesec}
\usepackage{enumitem}

\titleformat{\section}%
            {\Large\bfseries}% format
            {\llap{% label
               \thesection\hskip 9pt}#1}%
            {0pt}% horizontal sep
            {}% before

\titleformat{\subsection}%
        {\bfseries}% format
        {\llap{% label
           \thesubsection\hskip 9pt}#1}%
        {0pt}% horizontal sep
        {}% before

\setlist[enumerate]{leftmargin=0mm}
\setlist[itemize]{leftmargin=0mm}

\begin{document}
\section{First section}
\begin{enumerate}
 \item apple
 \item orange
 \item grape
\end{enumerate}

\subsection{First subsection}
\begin{itemize}
 \item foo
 \item bar
 \item foobar
\end{itemize}
\end{document}

相关内容