Skip to content

Commit 4d3b88f

Browse files
committed
fixed pdf insert bug
1 parent 640cb26 commit 4d3b88f

File tree

1 file changed

+19
-15
lines changed

1 file changed

+19
-15
lines changed

pdfs/add_comment_page.py

+19-15
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,30 @@
11
from sys import argv
2-
from PyPDF2 import PdfFileReader, PdfFileWriter, PdfWriter
2+
from PyPDF2 import PdfMerger, PdfFileReader
33
from pip import main
44
import sys
55

6-
def get_pages(input_pdf: PdfFileReader):
7-
return input_pdf.getNumPages()
86

7+
def add_pages(input_pdf_path: str, template_pdf_path: str):
8+
input_pdf = open(input_pdf_path, "rb")
9+
page_count: int = PdfFileReader(input_pdf_path).getNumPages()
10+
template = open(template_pdf_path, "rb")
11+
merger = PdfMerger()
912

10-
def add_pages(input_pdf_path: str, template_pdf_path: str) -> PdfFileWriter:
11-
writer = PdfFileWriter()
12-
input_reader = PdfFileReader(input_pdf_path)
13-
template_reader = PdfFileReader(template_pdf_path)
13+
print("original page count: " + str(page_count))
14+
for i in range(0, page_count):
15+
print("adding templatr page at "+ str(2 * i + 1))
16+
merger.append(fileobj=input_pdf, pages=(i, i+1))
17+
append_index = (2 * i) + 1
18+
merger.merge(position=append_index, fileobj=template, pages=(0, 1))
1419

15-
for i in range(0, get_pages(input_reader)):
16-
writer.addPage(input_reader.getPage(i))
17-
writer.addPage(template_reader.getPage(0))
20+
template.close()
21+
input_pdf.close()
22+
write_file(input_pdf_path, merger)
1823

19-
return writer
20-
21-
def write_file(input_pdf_path: str, writer: PdfFileWriter):
24+
def write_file(input_pdf_path: str, merger: PdfMerger):
2225
with open(input_pdf_path+"merged.pdf", "wb") as out:
23-
writer.write(out)
26+
merger.write(out)
27+
merger.close()
2428

2529
def main():
2630

@@ -31,7 +35,7 @@ def main():
3135
exit()
3236
input_pdf_path = sys.argv[1]
3337
template_pdf_path = sys.argv[2]
34-
write_file(input_pdf_path, add_pages(input_pdf_path, template_pdf_path))
38+
add_pages(input_pdf_path, template_pdf_path)
3539

3640
if __name__ == "__main__":
3741
main()

0 commit comments

Comments
 (0)