%3A%201%20%E5%88%97%E3%81%AE%E7%9B%AE%E6%AC%A1%E3%81%A8%202%20%E5%88%97%E3%81%AE%E3%83%89%E3%82%AD%E3%83%A5%E3%83%A1%E3%83%B3%E3%83%88%E5%86%85%E3%81%AE%E3%83%9F%E3%83%8B%E7%9B%AE%E6%AC%A1.png)
目次の書式設定に問題があります。以下のMNWEをご覧ください。すべてのテーブルを1列のレイアウトに切り替える。私はこれの解決策を試してみますtex.stackexchange の回答、これはTexコードのこの部分を使用します:
\unsettoc{toc}{onecolumn}
しかし、どうやらそれはうまくいかないようです。マニュアルのscrbook(ページ264) ですが、残念ながら理解できませんでした。私は miktex/xelatex を使用しています。翻訳結果の画像も添付します。
\documentclass[twocolumn]{scrbook}
\usepackage[nohints]{minitoc}
\unsettoc{toc}{onecolumn}
\usepackage{lipsum}
\begin{document}
\dominitoc
\tableofcontents
\chapter{Foo}
\minitoc
\lipsum[1]
\section{Bar}
\lipsum[2]
\subsection{Baz}
\lipsum[3]
\section{FooBarBaz}
\lipsum[4]
\end{document}
図1: 指示
\tableofcontents
図2: 指示
\minitoc
答え1
メインの目次
リンクされた回答と KOMA スクリプトのドキュメント1)をもう一度注意深くお読みください。デフォルトではscrbook
(そしてscrreprt
)tocはに設定されている1列モードただし、2 列に表示したい場合は、 が必要です\unsettoc{toc}{onecolumn}
。したがって、ここではそれを省略するのが解決策です...
ミニトック用
\setchapterpreamble
2)を使用します。注意: これは、属する章の前に設定する必要があります。 2 つのオプションの引数を使用して、位置と幅に影響を与えることができます。
また、 の前後のルールを無効にする必要があることにも注意してください\mtcsetrules{minitoc}{off}
。回避策として、 を 2 回\hrulefill
(最初は にし\smash
、次にボックスを作成する必要があります [なくても機能しますが、垂直スペースの決定がより困難になります]、2 回目も がなくても機能しますが、単にコピーしました) と垂直スペースをいくつか追加しました。 は、\vspace
フォントとフォント サイズに合わせて個別に調整する必要があると思います。
おそらく複数の章があると思うので、2つの新しいコマンドを定義しました。説明については下のコードを参照してください。これらは\setchapterpreamble
内部にある(または内部で使用することを意図している)ため、これら各章の前に設定する必要があります。
\documentclass[twocolumn]{scrbook}
\usepackage[nohints]{minitoc}
\mtcsetrules{minitoc}{off}
\usepackage{lipsum}
\newcommand{\dochaptertoc}{%
\vspace{1.85\baselineskip} % workaround for removed rule
\smash{\makebox[\linewidth]{\hrulefill}} % workaround for removed rule
\vspace{-1.85\baselineskip} % workaround for removed rule
\minitoc
\vspace{-1.15\baselineskip} % workaround for removed rule
\smash{\makebox[\linewidth]{\hrulefill}} % workaround for removed rule
\vspace{1.15\baselineskip} % workaround for removed rule
}
\newcommand{\setchaptertoc}{%
\setchapterpreamble{% KOMA-Script command
\dochaptertoc%
}}
\begin{document}
\dominitoc
\tableofcontents
\setchaptertoc
\chapter{One}
\lipsum[1]
\section{One, one}
\lipsum[2]
\subsection{One, one, one}
\lipsum[3]
\section{One, two}
\lipsum[4]
\setchapterpreamble{
\dictum{Time for a bon-mot.}% KOMA-Script command
\dochaptertoc
}
\chapter{Two}
\lipsum[5]
\section{Two, one}
\lipsum[6]
\section{Two, two}
\subsection{two, two, one}
\lipsum[7]
\end{document}
\setchaptertoc
ほとんどの場合、章の前に置くだけで十分です。ただし、minitoc 以上のものを追加したい場合のために、\dochaptertoc
使用を意図した削除されたルールの回避策を定義しました\setchapterpreamble
。例の第 2 章を参照してください。
1) Texdoc.net でオンラインで読む:“\setuptoc” と “\unsettoc”(PDF)
2) Texdoc.net でもオンラインで読むことができます:“\setpartpreamble” と “\setchapterpreamble”(再度PDF)