python pdf 合並

# -*- coding: utf-8 -*-
#!/usr/bin/env python

import sys
import os
from pyPdf import PdfFileWriter, PdfFileReader


# 这里简化了,可以使用walk,搜索出某目录下的全部pdf文件,再处理
# 下面这样处理的好处是,可以按顺序读取源pdf中的页面
pdf_filePath="D:\\test\\pdf\\"
pdf_fileName=["1", "2", "3"]

output=PdfFileWriter()
outputPages=0

for filename in pdf_fileName:
    # 读取源pdf文件
    p=pdf_filePath+filename+".pdf"
    input=PdfFileReader(file(p,"rb"))
   
    # 如果pdf文件已经加密,必须首先解密才能使用pyPdf
    if input.isEncrypted == True:
        input.decrypt("map")
   
    # 获得源pdf文件中页面总数
    pageCount=input.getNumPages()
    outputPages+=pageCount
    print pageCount
   
    # 分别将page添加到输出output中
    for iPage in range(0,pageCount):
        output.addPage(input.getPage(iPage))   
  
   
print "All Pages Number:"+str(outputPages)

# 最后写pdf文件
outputStream=file("D:/test/pdf/out.pdf","wb")
output.write(outputStream)
outputStream.close()

print "finished"



你可能感兴趣的:(python pdf 合並)