![在一个文档中结合单面和双面布局](https://linux22.com/image/314801/%E5%9C%A8%E4%B8%80%E4%B8%AA%E6%96%87%E6%A1%A3%E4%B8%AD%E7%BB%93%E5%90%88%E5%8D%95%E9%9D%A2%E5%92%8C%E5%8F%8C%E9%9D%A2%E5%B8%83%E5%B1%80.png)
我不知道该怎么做:前 50 页(封面除外)应该只打印在两页文档的右侧。最后 100 页(附录)应该打印在正反两面。我还想在生成的 PDF 中看到那些空白的左页,这样我就不能把它交给打印机了。有什么建议吗?
答案1
这是一个解决方案
\documentclass{book}
\usepackage{lipsum}
\makeatletter
\let\old@outputpage\@outputpage
\def\@outputpage{\old@outputpage\shipout\vbox{}}
\@twosidefalse \@mparswitchfalse
\makeatother
\begin{document}
\lipsum[1-70]
\makeatletter
\let\@outputpage\old@outputpage
\@twosidetrue \@mparswitchtrue
\makeatother
\lipsum[1-70]
\end{document}
答案2
这是使用@touhami 的钩子的版本,但提供了更多自动化:
\documentclass{report}
\usepackage{lipsum}
\makeatletter
\newif\if@appendix
\g@addto@macro\appendix{\@appendixtrue}
\let\ltx@outputpage\@outputpage
\def\@outputpage{%
\if@appendix
\@twosidetrue\@mparswitchtrue
\ltx@outputpage
\else
\@twosidefalse\@mparswitchfalse
\ltx@outputpage\shipout\vbox{}% or \vbox{\stepcounter{page}} if you want to have the empy pages "silently" numbered
\fi}
\makeatother
\begin{document}
\lipsum
\newpage
\appendix
\lipsum
\end{document}