我正在尝试创建一个打印文档版本,该版本应该具有对称的左/右页。为此,我想更改页面上拇指索引的外观,现在该页面已完全对称(假设不需要打印)。我希望对原始文档/包进行最小程度的更改(例如,thumbs
如果不是绝对必要,则不更换包)。
我正在使用以下 MWE,但无法使缩略图显示在页面的两侧(或者仅在一侧)。有没有办法thumbs
以这种方式参数化包?
%!TEX TS -program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass{book}
\usepackage[paperwidth=190mm, paperheight=280mm, textwidth=170mm, textheight=263mm,
top=14mm, bottom=22mm, inner=16.5mm, outer=16.5mm, headsep=3mm, headheight=6mm, footskip=12mm]{geometry}
\usepackage{xcolor}
\usepackage[width=12mm, height=9.5mm, distance=0.5mm, eventxtindent=2pt, oddtxtexdent=2pt, topthumbmargin=22mm, bottomthumbmargin=0pt]{thumbs}
\usepackage{lipsum}
\pagenumbering{arabic}
\begin{document}
\chapter*{A}
\addthumb{A}{A}{white}{black}
\lipsum[1-16]
\chapter*{B}
\addthumb{B}{B}{white}{black}
\lipsum
\chapter*{C}
\addthumb{C}{C}{white}{black}
\lipsum
\chapter*{D}
\addthumb{D}{D}{white}{black}
\lipsum
\end{document}
答案1
我建议改变的定义以\cleardoublepage
忽略\if@twoside
测试。
这意味着您可以在单面和双面文档之间切换而不会弄乱分页。
然后你需要做的就是改变你的文档类别
\documentclass[twoside]{book}
和
\documentclass[oneside]{book}
重新定义的定义\cleardoublepage
变成:
% ensure twoside always true when clearing a double page
% by removing \if@twoside test
\makeatletter
\def\cleardoublepage{\clearpage\ifodd\c@page\else
\hbox{}\newpage\if@twocolumn\hbox{}\newpage\fi\fi}
\makeatother
在单面模式下,缩略图将只显示在页面的右侧。在双面模式下,缩略图将交替显示在页面的两侧。只需\documentclass
更改文件的行即可。