我在 tufte-book 中创建了两个索引。我对第一个索引使用默认设置--艺术家索引——与书的正文相匹配,为双栏,并且具有整本书使用的较大边距。(我在 Mac 上运行的是 TeXShop 3.96。)
我的问题集中在其他方面,一般指数,它太大了,我想把它做成三列并跑过整个页面。我尝试\makeindex
用\begin{fullpage} ... \end{fullpage}
(见下文)包围。这有效一半页面,但另一半页面(交叉页面)的边距都是错误的。基本上,当遇到\begin{fullpage}
LaTeX “决定”布局是否应该假设以下所有内容都在甚至页面或奇怪的页面,并在整个排版过程中坚持这一点。
这是输出页面的顶部几英寸...首先是索引的“良好”边距页:
接下来是索引的“糟糕”边距页:
以下是源代码的一个最小工作示例:
\documentclass[twoside,symmetric]{tufte-book}
\usepackage{imakeidx}
\makeindex[name=artists,title=Index of artists,columns=2]
\makeindex[title=Index,columns=3]
\begin{document}
\chapter{My first chapter}
Text here
\index[artists]{Picasso, Pablo}
\index{oil paint}
\printindex[artists]
\begin{fullwidth}
\printindex
\end{fullwidth}
\end{document}
如何确保所有三列索引页都是整页宽度并且具有适当的边距?
答案1
使用文档类tufte-book
,为边注保留了 2 英寸的边距。关于选项twoside,symmetric
,手册中写道:
该
twoside
选项将修改运行头,以便将页码打印在外边缘(而不是在oneside
模式下始终将页码打印在右边缘)。该
symmetric
选项将旁注排版在页面的外边缘。这是传统书籍的印刷方式,但与 Tufte 的书籍设计相反,后者将旁注设置在页面的右侧。此选项隐式设置了该twoside
选项。
因此,使用选项symmetric
(因此twoside
)会根据页码奇偶校验为左边距产生不同的值。
使用oneside
选项(并删除symmetric
)将得到以下屏幕截图的右侧(twoside,symmetric
左侧所示)。
在这些截图中,我在边缘画了一个框(使用 package showframe
),以显示三列已经跨越整个页面宽度。我还添加了其他索引条目以跨越多列:
\documentclass[oneside]{tufte-book}
\usepackage{imakeidx}
\usepackage{showframe}
\makeindex[name=artists,title={Index of artists},columns=3]
\makeindex[title=Index,columns=3]
\begin{document}
\chapter{My first chapter}
Text here
\index[artists]{Picasso0, Pablo0}
\index[artists]{Picasso1, Pablo1}
\index[artists]{Picasso2, Pablo2}
\index[artists]{Picasso3, Pablo3}
\index[artists]{Picasso4, Pablo4}
\index[artists]{Picasso5, Pablo5}
\index[artists]{Picasso6, Pablo6}
\index[artists]{Picasso7, Pablo7}
\index[artists]{Picasso8, Pablo8}
\index[artists]{Picasso9, Pablo9}
\index[artists]{Picasso10, Pablo10}
\index[artists]{Picasso11, Pablo11}
\index[artists]{Picasso12, Pablo12}
\index[artists]{Picasso13, Pablo13}
\index[artists]{Picasso14, Pablo14}
\index[artists]{Picasso15, Pablo15}
\index[artists]{Picasso16, Pablo16}
\index[artists]{Picasso17, Pablo17}
\index[artists]{Picasso18, Pablo18}
\index[artists]{Picasso19, Pablo19}
\index[artists]{Picasso20, Pablo20}
\index[artists]{Picasso21, Pablo21}
\index[artists]{Picasso22, Pablo22}
\index[artists]{Picasso23, Pablo23}
\index[artists]{Picasso24, Pablo24}
\index[artists]{Picasso25, Pablo25}
\index[artists]{Picasso26, Pablo26}
\index[artists]{Picasso27, Pablo27}
\index[artists]{Picasso28, Pablo28}
\index[artists]{Picasso29, Pablo29}
\index[artists]{Picasso30, Pablo30}
\index[artists]{Picasso31, Pablo31}
\index[artists]{Picasso32, Pablo32}
\index[artists]{Picasso33, Pablo33}
\index[artists]{Picasso34, Pablo34}
\index[artists]{Picasso35, Pablo35}
\index[artists]{Picasso36, Pablo36}
\index[artists]{Picasso37, Pablo37}
\index[artists]{Picasso38, Pablo38}
\index[artists]{Picasso39, Pablo39}
\index[artists]{Picasso40, Pablo40}
\index[artists]{Picasso41, Pablo41}
\index[artists]{Picasso42, Pablo42}
\index[artists]{Picasso43, Pablo43}
\index[artists]{Picasso44, Pablo44}
\index[artists]{Picasso45, Pablo45}
\index[artists]{Picasso46, Pablo46}
\index[artists]{Picasso47, Pablo47}
\index[artists]{Picasso48, Pablo48}
\index[artists]{Picasso49, Pablo49}
\index[artists]{Picasso50, Pablo50}
\index[artists]{Picasso51, Pablo51}
\index[artists]{Picasso52, Pablo52}
\index[artists]{Picasso53, Pablo53}
\index[artists]{Picasso54, Pablo54}
\index[artists]{Picasso55, Pablo55}
\index[artists]{Picasso56, Pablo56}
\index[artists]{Picasso57, Pablo57}
\index[artists]{Picasso58, Pablo58}
\index[artists]{Picasso59, Pablo59}
\index[artists]{Picasso60, Pablo60}
\index[artists]{Picasso61, Pablo61}
\index[artists]{Picasso62, Pablo62}
\index[artists]{Picasso63, Pablo63}
\index[artists]{Picasso64, Pablo64}
\index[artists]{Picasso65, Pablo65}
\index[artists]{Picasso66, Pablo66}
\index[artists]{Picasso67, Pablo67}
\index[artists]{Picasso68, Pablo68}
\index[artists]{Picasso69, Pablo69}
\index[artists]{Picasso70, Pablo70}
\index[artists]{Picasso71, Pablo71}
\index[artists]{Picasso72, Pablo72}
\index[artists]{Picasso73, Pablo73}
\index[artists]{Picasso74, Pablo74}
\index[artists]{Picasso75, Pablo75}
\index[artists]{Picasso76, Pablo76}
\index[artists]{Picasso77, Pablo77}
\index[artists]{Picasso78, Pablo78}
\index[artists]{Picasso79, Pablo79}
\index[artists]{Picasso80, Pablo80}
\index[artists]{Picasso81, Pablo81}
\index[artists]{Picasso82, Pablo82}
\index[artists]{Picasso83, Pablo83}
\index[artists]{Picasso84, Pablo84}
\index[artists]{Picasso85, Pablo85}
\index[artists]{Picasso86, Pablo86}
\index[artists]{Picasso87, Pablo87}
\index[artists]{Picasso88, Pablo88}
\index[artists]{Picasso89, Pablo89}
\index[artists]{Picasso90, Pablo90}
\index[artists]{Picasso91, Pablo91}
\index[artists]{Picasso92, Pablo92}
\index[artists]{Picasso93, Pablo93}
\index[artists]{Picasso94, Pablo94}
\index[artists]{Picasso95, Pablo95}
\index[artists]{Picasso96, Pablo96}
\index[artists]{Picasso97, Pablo97}
\index[artists]{Picasso98, Pablo98}
\index[artists]{Picasso99, Pablo99}
\index{oil paint}
\printindex[artists]
\begin{fullwidth}
\printindex
\end{fullwidth}
\end{document}
如果您确实想要一份twoside,symmetric
文档,请使用\thispagestyle
带有包的命令geometry
。
编辑以下是使用的完整详细信息geometry
和afterpage
软件包,感谢这个答案. 还要感谢@苹果用于tikz
缩短 TeX 代码。
\documentclass[twoside,symmetric]{tufte-book}
\usepackage{imakeidx}
\usepackage{showframe,tikz}
\usepackage{geometry,afterpage}
\makeindex[name=artists,title={Index of artists},columns=3]
\begin{document}
\chapter{My first chapter}
Text here
\foreach \s in {1,2,...,200}{
\index[artists]{Picasso\s, Pablo\s}}
\afterpage{%
\newgeometry{left=1in,right=1in}
\printindex[artists]
\clearpage
\restoregeometry
}
\end{document}
生产以下内容(左侧:第 1 页和第 2 页,右侧:第 3 页和第 4 页)。由于该\restoregeometry
命令,本书其余部分的样式(尤其是页边距)保持不变。
答案2
根据 jdhd 的回答,这里尝试使用adjmulticol
全宽环境及其tikz
命令\foreach
。虽然这可行,但它会导致另一个问题:索引列表不会更改页面。也许有人可以解决这个问题。不过,我提出了这个解决方案:
\documentclass[oneside,symmetric]{tufte-book}
\usepackage{imakeidx}
\usepackage{showframe,adjmulticol,tikz}
\makeindex[name=artists,title={Index of artists},columns=3]
\makeindex[title=Index,columns=3]
\newcommand{\full}[1]{\begin{adjmulticols}{1}{0cm}{\dimexpr-\marginparwidth-\marginparsep\relax}
#1
\end{adjmulticols}}
\begin{document}
\chapter{My first chapter}
Text here
\foreach \s in {1,2,...,200}{
\index[artists]{Picasso\s, Pablo\s}}
\index{oil paint}
\printindex[artists]
\begin{fullwidth}
\printindex
\end{fullwidth}
\full{\printindex[artists]}
\end{document}