更改文档部分内容的边距

更改文档部分内容的边距

我想更改双面文档中页面中间的边距。此部分的内容(具有新的更宽边距)恰好延续到下一页。我很难编辑第二页的正确边距。我将源代码与输出一起附上。有没有办法让第二页的顶部遵循上一页中定义的边距?

具体来说,我有

\begin{adjustwidth*}{-5cm}{0cm}

当我开始更改页边距时。当文本运行到第二页时,如果我在第一页的末尾结束,在第二页的开头adjustwidth开始另一个文本,它就会起作用(大概)。\begin{adjustwidth*}(0cm}{-5cm}

但我希望有一种更优雅的方式来做到这一点。

谢谢

\documentclass[twoside]{book}
\usepackage
[
        a4paper,% other options: a3paper, a5paper, etc
        left=7cm,
        right=2cm,
        top=3cm,
        bottom=4cm,
]
{geometry}

\usepackage{multicol}
\usepackage{changepage}% provides the adjustwidth environment

\newenvironment{changemargin}[2]{%
\begin{list}{}{%
\setlength{\topsep}{0pt}%
\setlength{\leftmargin}{#1}%
\setlength{\rightmargin}{#2}%
\setlength{\listparindent}{\parindent}%
\setlength{\itemindent}{\parindent}%
\setlength{\parsep}{\parskip}%
}%
\item[]}{\end{list}}

\usepackage{lipsum}
\setlength\columnsep{30pt}
\begin{document}
\lipsum[1-2]

\bigskip
%start changing margin
\begin{adjustwidth*}{-5cm}{0cm}
\textsf{Exercises}

\vspace{-.1in}
\noindent\rule{17cm}{0.4pt}

\vspace{-.1in}
\begin{multicols}{2}
\lipsum
\end{multicols}
\end{adjustwidth*}
%end changing margin

\lipsum[1-2]

%start changing margin
\begin{changemargin}{0cm}{-5cm}
\lipsum[1-4]
\end{changemargin}
%end changing margin


\end{document}

相关内容