我正在尝试使用以下方法启动新的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会阻止你使用花车。

希望这就是你所需要的!

其他提示

我不确定你到底在找什么,但一般来说多元醇中不允许使用marginpars。来自multicol文档:

  

...当前实施中不允许使用浮点数和边距值[这是由于时间不够而导致的。要实现fl oats必须重新实现整个LATEX输出例程。]。

我已经设法通过使用chngpage包并定义一个新环境来设置/重置该环境之前/之后的不同值。

但是,我在每个\章的最后一页仍有问题:标题宽度”

scroll top