是否使小节文本在定义的左边距内左对齐?

是否使小节文本在定义的左边距内左对齐?

我怎样才能使小节文本在定义的左边距内左对齐,其“自身”边距为 0.75 英寸(而不是 3.0 英寸)?我相信这项任务的软件包是,titlesec但我愿意接受其他可能性。MWE:

\documentclass{article}
\setlength\parindent{0pt} % no indents

\usepackage{geometry}
\geometry{top=1.0in, left=3.0in, right=.75in, bottom=1in}
\usepackage{lipsum}
\usepackage{titlesec}

% subsection format setup
% \titleformat{\subsection}

\begin{document}

\section{First Section}

\lipsum[1-10]

\subsection{First Subsection}

\lipsum[1-10]

\end{document}

这是所需的输出: 期望

任何帮助都将不胜感激!

答案1

这是使用 的解决方案titlesec。想法是使用命令llapsmashingit 将子节标签和标题放在页边距中,这样正文中的行在页面上保持在同一水平。使用tabularx规定宽度 的环境获得相对于标签悬挂的节标题3in - 0.75 in。最后,我必须补偿 LaTeX 在tabularx环境和正文中的第一个单词之间插入的单词间空间。

\documentclass{article}
\usepackage[utf8]{inputenc}
\setlength\parindent{0pt} % no indents
\usepackage[x11names]{xcolor}
\usepackage{tabularx}
\usepackage{geometry}
\geometry{top=1.0in, left=3.0in, right=.75in, bottom=1in}
\usepackage{lipsum}
\usepackage[explicit]{titlesec}

 \titleformat{\subsection}[runin]{\bfseries\large\color{Tomato4! 80! }}{}{0em}{\llap{\smash{\begin{tabularx}{2.25in}[t]{@{}l@{\hskip0.4em}>{\raggedright}X@{\hskip\marginparsep}}\thesubsection & #1\end{tabularx}}}}[\leavevmode\hspace*{\dimexpr-\fontdimen2\font-\fontdimen3\font}]


\begin{document}

\section{First Section}

\lipsum[1-2]

\subsection{First Subsection with a long title}

\lipsum[1-10]

\end{document} 

在此处输入图片描述

相关内容