覆盖另一个pdf或ps文件
我有两个pdf或postscript文件(我可以使用任何一个)。 我想要做的是将每个页面合并到另一个页面上,这样文档A的page1将与文档B的页面1结合,生成输出文档的页面1。 这不是我想要编程的需要,尽pipe这会有所帮助。
有任何想法吗?
您可以使用命令行工具pdftk使用stamp
或background
选项来执行此操作。
例如
$ pdftk file1.pdf background file2.pdf output combinedfile.pdf
这只适用于单页背景文件。 如果您有多个页面,则可以使用multibackground
命令。
我已经成功地通过使用pyPdf ,特别是mergePage操作来解决这个问题(PDF和Python)。
从文档:
# add page 4 from input1, but first add a watermark from another pdf: page4 = input1.getPage(3) watermark = PdfFileReader(file("watermark.pdf", "rb")) page4.mergePage(watermark.getPage(0))
应该足以得到这个想法。
如果你只是处理后记,机会是唯一的“pagebreaks”是“showpage”操作符。
在这种情况下,您可以简单地从第一个文件的开头抓取postscript数据到第一个“showpage”实例,对其他文件执行相同的操作,然后连接这两个postscript文件以创build新的页面。
如果这两个文件只有一个页面,那么你可以简单地join这两个文件。
您可以将这两个PDF转换为图像,并覆盖在另一层之上。
一个合适的graphics库,你可以使用这个工作。
上面的水印build议也有很大的潜力,只要你没有遇到你select的语言或graphics/ pdf库的问题。
Aspose.Pdf.Kit与PdfFileStamp
类也可以做到这一点。 它大部分时间都正常工作。
PDFbox for Java支持Overlay类,允许以这种方式合并PDF。 看到这个答案: 与PDFBox的水印
然而,PyPDF2和PDFbox在我的经验中都是不可靠的,但也许这对某人是有帮助的。
我使用了Mac OS工具PDFClerk Pro 。 我导入了PDF页面,然后将它们与“合并页面(堆叠)”选项合并。 这真的让我印象深刻。
VeryPDF PDF Editor有一个PDF Overlayfunction,看这个网页,
http://www.verypdf.com/wordpress/201304/how-to-overlay-pdf-to-another-pdf-35885.html
对于OS X,有PDF信笺。 除了重叠PDF之外,别的什么都不做。 https://itunes.apple.com/us/app/pdf-letterhead/id976548033?mt=12