答案1
这可能需要更多调整。似乎有些事情需要在 paracol 之外完成(\pagestyle
?)。此外,\section
随着使用 ,将变得更加困难\@startsection
。我会重新定义\section
为更像\chapter
。
\documentclass{report}
\usepackage{paracol}
\usepackage{lipsum}
\makeatletter
\renewcommand\chapter{\end{paracol}
%\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{plain}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\def\@makechapterhead#1{\vspace*{20\p@}% adjustable
\begin{paracol}{2}
{\parindent \z@ \raggedright \normalfont
\ifnum \c@secnumdepth >\m@ne
\huge\bfseries %\@chapapp\space
\thechapter\par\vfill
\fi}
\switchcolumn
{\parindent \z@ \raggedright \normalfont
\interlinepenalty\@M
\huge \bfseries #1\par\nobreak
\vskip 20\p@% adjustable
}}
\makeatother
\setcolumnwidth{3cm}% second column take rest of page
\begin{document}
\begin{paracol}{2}
First column
\switchcolumn
Second column
\chapter{Title}
\lipsum[1]
\end{paracol}
\lipsum[2]
\end{document}
答案2
经过几个小时的搜索和测试,我找到了一个非常简单的解决方案,使用\leftskip
。这只会移动“文本边距”,而不会影响图形、表格、列表和标题。
结合titlesec
包中标题布局的调整和包中列表边距的添加enumitem
,它可以完美地运行:
\documentclass{report}
\usepackage{lipsum}
\setlength{\leftskip}{2cm}
\usepackage{titlesec}
\titleformat{\chapter}[block]{\normalfont\huge\bfseries}{\thechapter.}{1.3cm}{}
\titleformat{\section}[block]{\normalfont\Large\bfseries}{\thesection.}{1.2cm}{}
\begin{document}
\chapter{Title}
\section{title}
\lipsum[1]
\lipsum[2]
\end{document}