首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python中收缩和合并PDF

在Python中收缩和合并PDF
EN

Stack Overflow用户
提问于 2010-11-10 09:31:24
回答 2查看 2.1K关注 0票数 2

我正在尝试缩小并合并两个A4 PDF页面为一个A4页面,以便如果我有;

代码语言:javascript
复制
 _____        _____        
|     |      |     |
| p1  |      | p2  | 
|     |      |     |
|_____|      |_____|

我会得到;

代码语言:javascript
复制
 _____             
| p1  |    
|.....| 
| p2  |  
|_____|      

作为一个新的PDF,在一个页面上有两个A5大小的页面。类似于在纸上每页打印两页的方式。

我研究过pyPDF (http://pybrary.net/pyPdf/) ReportLab (http://www.reportlab.com),但我似乎找不到如何像这样缩小和合并。

有什么提示吗?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-10 10:59:51

pdfnup具有此功能(http://pypi.python.org/pypi/pdfnup)#

例如:

代码语言:javascript
复制
from pyPdf import PdfFileWriter, PdfFileReader
from pdfnup import generateNup

output = PdfFileWriter()
input1 = PdfFileReader(file("in.pdf", "rb"))

page1 = input1.getPage(0)
page2 = input1.getPage(1)

output.addPage(page1)
output.addPage(page2)

outputStream = file("out.pdf", "wb")
output.write(outputStream)
outputStream.close()

generateNup("out.pdf", 2)
票数 4
EN

Stack Overflow用户

发布于 2010-11-10 09:38:21

我做这件事的方法(不一定是最好的方法,但使用我可用的工具)是使用Ghostcript的pdf2ps转换成PostScript,然后附加一个N-up PostScript前导(PS是一个完整的编程语言,你可以重新定义内置的,比如"showpage“,直接在文档中添加N-up或递减),然后我会用ps2pdf转换回来。

目前,我还没有找到PostScript N-up实用程序的发布版本,但您可以在谷歌上搜索用其他语言编写的、可以操作PostScript文档本身的几个程序,比如http://www.tardis.ed.ac.uk/~ajcd/psutils/上的那些程序

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4140466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档