我最近添加了一个etoolbox
切换按钮,让我可以在文档的纸质版本或电子版本之间进行选择。
\newtoggle{papier}
首先,这会禁用使用包的彩色超链接和彩色代码listings
。在纸质版本中,我通常使用以下函数
\newcommand\sautdoublepage{\clearpage{~\pagestyle{empty}\cleardoublepage}}
在每个新章节之前将左页留空。我很想在电子版中禁用它,因为保留它没有任何意义(就像在 MWE 中一样),但最终我的电子版和纸质版的页码不同。
所以我的问题是:有没有办法定义\sautdoublepage
,以便将页码计数器设置为\sautdoublepage
与纸质版本中定义的值相同的值。
我不确定这是否清楚,所以这里是我想要做的事情的一个例子
纸质版
第 1 页 - 第 1 章;第 2 页 - 跳过的页面;第 3 页 - 第 2 章;...
当前电子版
第 1 页 - 第 1 章;第 2 页 - 第 2 章;...
所需电子版
第 1 页 - 第 1 章;第 3 页 - 第 2 章;...
妇女权利委员会:
\documentclass[a4paper,twoside,10pt]{report}
\usepackage{fontspec,lipsum}
\usepackage[top=2cm,
bottom=2cm,
left=2cm,
right=2cm,%
bindingoffset=1cm]{geometry}
\usepackage{etoolbox}
\newtoggle{papier}
\toggletrue{papier}
\iftoggle{papier}{% Paper
\newcommand\sautdoublepage{\clearpage{~\pagestyle{empty}\cleardoublepage}}
}{% Electronic
\newcommand\sautdoublepage{}
}
\begin{document}
\chapter{Chapter 1}
\lipsum[1-3]
\sautdoublepage\chapter{Chapter 2}
\lipsum[4-15]
\sautdoublepage\chapter{Chapter 3}
\lipsum[16-40]
\sautdoublepage\chapter*{Last chapter}
\end{document}
答案1
您可以使用包\ifoddpage
中的changepage
功能来检测何时想要跳过页码。
\newcommand\sautdoublepage{\clearpage\checkoddpage\ifoddpage\addtocounter{page}{2}\else\addtocounter{page}{1}\fi}
得出\togglefalse{papier}
第 2 章从第 3 页开始的结果:
代码:
\documentclass[a4paper,twoside,10pt]{report}
%\usepackage{fontspec}
\usepackage{lipsum}
\usepackage[top=2cm,
bottom=2cm,
left=2cm,
right=2cm,%
bindingoffset=1cm]{geometry}
\usepackage{etoolbox}
\usepackage{changepage}
\newtoggle{papier}
\togglefalse{papier}
\iftoggle{papier}{% Paper
\newcommand\sautdoublepage{\clearpage{\thispagestyle{empty}\cleardoublepage}}%
}{% Electronic
\newcommand\sautdoublepage{\clearpage\checkoddpage\ifoddpage\addtocounter{page}{2}\else\addtocounter{page}{1}\fi}%
}
\begin{document}
\chapter{Chapter 1}
\lipsum[1-3]
\sautdoublepage\chapter{Chapter 2}
\lipsum[4-15]
\sautdoublepage\chapter{Chapter 3}
\lipsum[16-40]
\sautdoublepage\chapter*{Last chapter}
\end{document}