
我的目錄格式有問題。請參閱下面我的 MNWE。我想將我的所有表格切換為一列佈局。我嘗試使用此解決方案tex.stackexchange 答案,它使用以下 tex 程式碼:
\unsettoc{toc}{onecolumn}
但看來,這行不通。我試圖理解手動記錄簿(頁面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-Script 文件1):預設情況下在scrbook
(和scrreprt
) 中,目錄設定在單列模式。只是,當您想將其分成兩列時,您需要\unsettoc{toc}{onecolumn}
.所以,把它排除掉就是這裡的解決方案…
對於迷你托克
使用\setchapterpreamble
2)。請注意,必須將其設定在其所屬章節之前。透過兩個可選參數,您可以影響位置和寬度。
另請注意,我必須在 之前和之後停用規則\mtcsetrules{minitoc}{off}
。作為解決方法,我添加了兩次\hrulefill
(第一次必須在其中\smash
,然後是一個製作框[如果沒有它也可以工作,但隨後確定更困難的垂直空間],第二次也可以在沒有情況下工作,但我只是複製了它)和一些垂直空間。我想,\vspace
必須根據自己的字體和字體大小進行單獨調整。
由於您很可能會閱讀不只一章,因此我定義了兩個新命令,請參閱下面的程式碼以了解備註。因為這些有\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”和“\sethapterpreamble”(再次PDF)