2017-04-11 45 views
0

我想打印双面的A6小册子。即使这个问题已经在互联网上发布了很多,我找不到任何合适的解决方案。 我想出了一种使用Latex和python的方法。 我用这个乳胶代码:打印使用python和Latex的A6双面小册子

\documentclass[a4paper]{article} 
\usepackage[margin=0pt]{geometry} 
\usepackage[skins,raster]{tcolorbox} 
\pagestyle{empty} 
\begin{document} 
\begin{tcbraster}[raster height=\textheight,raster equal skip=0pt,blank, 

    graphics pages={8,1,6,3, 2,7,4,5}] 
    \tcbincludepdf{a6.pdf}% <-- The A6 document with 8 pages 
\end{tcbraster} 
\end{document} 

要rearange以正确的顺序的页面(a6.pdf是我要打印的文档),我用这个Python代码:

L=[] 
for i in range(0,100,8): 
    L.append(i+8) 
    L.append(i+1) 
    L.append(i+6) 
    L.append(i+3) 
    L.append(' '+str(i+2)) 
    L.append(i+7) 
    L.append(i+4) 
    L.append(i+5) 

生成正确顺序的页面列表(此处为100页)。

  1. 我该如何让python在昏迷(8,1,6,3,...)的情况下水平打印?有了这个线程python: printing horizontally rather than current default printing我可以水平打印,但不能与昏迷。

  2. 我可以使用PyPDF2重新排列页面并摆脱这个乳胶脚本?

回答

0

我不确定你的例子到底需要什么,但pdfrw可以在PDF中轻松读取并重新排列它以进行打印。

Here是一次安排页面四个以绑定书籍的示例,而here是嵌套页面的示例,例如,用于装订。

还有其他的例子,如果你需要旋转页面。

如果您只需要排列页面,而不是在一个输出页面上放置多个输入页面,则最简单的启动地点可能是subset示例。还有一个cat的例子。

声明:我是pdfrw的主要作者。