我试图以此启动新的multicols环境时关闭marginpar:

\ renewenvironment {multicols} [1] {%
\ let \ oldmarginparwidth \ marginparwidth
\ setlength {\ marginparwidth} {0}%
\ begin {multicols} {#1}
} {%
\ end {multicols}%
\ setlength {\ marginparwidth} {\ oldmarginparwidth}%
}


但是,它不起作用。我想念什么?

最佳答案

您在此处找到的命令在页面的中间无效,您需要使用changepage软件包来执行此操作。

\usepackage{changepage}


我认为您正在尝试占用页面的整个宽度。我从tufte-latex类中切出了这一点:

首先,定义一个“悬空”量,该量将在开始时添加到文本宽度,并在末尾减去:

\newlength{\overhang}
\setlength{\overhang}{\marginparwidth}
\addtolength{\overhang}{\marginparsep}


然后,当您要删除marginpar空间时,将\ adjustwidth与突出量一起使用:

\begin{adjustwidth}{}{-\overhang}
% This will be displayed full-width
\end{adjustwidth}{}{-\overhang}


正如Damien指出的那样,您仍然可以像这样使用marginpars,它们将超出页面宽度。 \ multicols将阻止您使用浮点数。

希望这就是您所需要的!

09-28 04:05