マルチコル環境でmarginpar(marginparwidth)をオフにする
-
03-07-2019 - |
質問
これで新しいマルチコル環境を開始するときに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を使用すると、floatを使用できなくなります。
それがあなたが必要とすることを願っています!
他のヒント
ここで何を探しているのか正確にはわかりませんが、一般に、marginparsはすでにマルチコルでは許可されていません。 multicolドキュメントから:
... floatsおよびmarginparsは現在の実装では許可されていません[これは時間の不足によって決まります。 fl oatsを実装するには、LATEX出力ルーチン全体を再実装する必要があります。]
chngpageパッケージを使用し、その環境の前後で異なる値を設定/リセットする新しい環境を定義することで、それを機能させることができました。
ただし、各\ chapterの最後のページにはまだ問題があります:章の最後のページのヘッダー幅
所属していません StackOverflow