2016-04-29 54 views
0

我想根據名稱列表和頁面列表拆分一個大的pdf。例如名字有三頁,第二頁有一頁,第三頁有五頁等等。我創建了下面的腳本,它不能正常工作。例如,當pdf拆分第一個頁面是正確的三頁時,第二頁有四個頁面,它應該只有一個頁面,第三個頁面有九個頁面,它應該有五個頁面,最後一個pdf頁面應該有一個頁面頁。我錯過了什麼?python-pypdf基於頁面範圍列表的分割pdf

for arry, name in zip(pglist, deptNames5): 
    for page in arry: 
     pagenumber = pdfDoc.getPage(page) 
     NewPdf.addPage(pagenumber) 
     with open(name + b'.pdf', 'wb') as f: 
      NewPdf.write(f) 
+0

'NewPdf.addPage(頁面編號)' - 你只是不斷增加的網頁存在。一旦輸出完成,您應該倒帶它。 – taras

回答

1

我覺得這段代碼的正確版本應該是

for arry, name in zip(pglist, deptNames5): 
    NewPdf = PdfFileWriter() 
    for page in arry: 
     pagenumber = pdfDoc.getPage(page) 
     NewPdf.addPage(pagenumber) 
    with open(name + b'.pdf', 'wb') as f: 
     NewPdf.write(f)