列表项文本对齐

列表项文本对齐

我嵌套了带有长标签的枚举。结果,项目中的文本向右偏移很大。我希望项目中的文本完全不移动(与没有枚举的文本的水平偏移相同)。

平均能量损失

\documentclass[a4paper, 10pt, twocolumn]{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage[hmargin=0.1cm,vmargin=2cm]{geometry}
\usepackage{enumitem}

\setlength{\columnsep}{0.2cm}
\setlength{\columnseprule}{0.4pt}

\setlist[enumerate,1]{label=\bfseries\thesubsection.\arabic*}
\setlist[enumerate,2]{label*=\bfseries.\arabic*} 
\setlist[enumerate,3]{label*=\bfseries.\arabic*} 
\setlist[enumerate,3]{label*=\bfseries.\arabic*}
\setlist[enumerate]{leftmargin=*}

\begin{document}
\raggedbottom

\section{Section 1}

\section{Section 2}
Section Line
\subsection{Subsection 1}
\subsection{Subsection 2}

\begin{enumerate}
    \item Item 1 \\
    Line 1
    \item Item 2 \\
    Line 2
\end{enumerate}

\end{document}

我的示例中的线 1 和线 2 必须具有作为剖面线的保存水平偏移。

答案1

为了获得这种格式,最好设置leftmargin=0pt而不是leftmargin=*,并设置itemindent为适当的值

itemindent=\widthof{\bfseries\thesubsection.\theenumi\hspace*{\labelsep}}

举个小例子:

\documentclass{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage[hmargin=0.1cm,vmargin=2cm]{geometry}
\usepackage{enumitem}
\usepackage{calc}

\setlength{\columnsep}{0.2cm}
\setlength{\columnseprule}{0.4pt}

\setlist[enumerate,1]{label=\bfseries\thesubsection.\arabic*}
\setlist[enumerate,2]{label*=\bfseries.\arabic*} 
\setlist[enumerate,3]{label*=\bfseries.\arabic*} 
\setlist[enumerate,3]{label*=\bfseries.\arabic*}
\setlist[enumerate]{leftmargin=0pt,itemindent=\widthof{\bfseries\thesubsection.\theenumi\hspace*{\labelsep}}}

\begin{document}
\raggedbottom

\section{Section 1}

\section{Section 2}
Section Line
\subsection{Subsection 1}

\subsection{Subsection 2}
\begin{enumerate}
\item Item 1 \\
Line 1
\item Item 2 \\
Line 2
\end{enumerate}

\setcounter{section}{10}% just for the example
\setcounter{subsection}{12}% just for the example
\begin{enumerate}
\item Item 1 \\
Line 1
\item Item 2 \\
Line 2
\end{enumerate}

\end{document}

在此处输入图片描述

相关内容