|
1 | 1 | # ----------------------------- |
2 | | -# Using the PdfFileWriter Class |
| 2 | +# Using the PdfWriter Class |
3 | 3 | # ----------------------------- |
4 | 4 |
|
5 | | -from PyPDF2 import PdfFileWriter |
| 5 | +from pypdf import PdfWriter |
6 | 6 |
|
7 | | -pdf_writer = PdfFileWriter() |
| 7 | +output_pdf = PdfWriter() |
8 | 8 |
|
9 | | -page = pdf_writer.addBlankPage(width=72, height=72) |
| 9 | +page = output_pdf.add_blank_page(width=8.27 * 72, height=11.7 * 72) |
10 | 10 |
|
11 | 11 | print(type(page)) |
12 | 12 |
|
13 | 13 | from pathlib import Path # noqa |
14 | 14 |
|
15 | | -with Path("blank.pdf").open(mode="wb") as output_file: |
16 | | - pdf_writer.write(output_file) |
17 | | - |
| 15 | +output_pdf.write("blank.pdf") |
18 | 16 |
|
19 | 17 | # ----------------------------------- |
20 | 18 | # Extracting a Single Page From a PDF |
21 | 19 | # ----------------------------------- |
22 | 20 |
|
23 | 21 | from pathlib import Path # noqa |
24 | | -from PyPDF2 import PdfFileReader, PdfFileWriter # noqa |
| 22 | + |
| 23 | +from pypdf import PdfReader, PdfWriter # noqa |
25 | 24 |
|
26 | 25 | # Change the path to work on your computer if necessary |
27 | 26 | pdf_path = ( |
|
30 | 29 | / "practice_files" |
31 | 30 | / "Pride_and_Prejudice.pdf" |
32 | 31 | ) |
33 | | -input_pdf = PdfFileReader(str(pdf_path)) |
| 32 | +input_pdf = PdfReader(pdf_path) |
34 | 33 |
|
35 | | -first_page = input_pdf.getPage(0) |
| 34 | +first_page = input_pdf.pages[0] |
36 | 35 |
|
37 | | -pdf_writer = PdfFileWriter() |
38 | | -pdf_writer.addPage(first_page) |
| 36 | +output_pdf = PdfWriter() |
| 37 | +output_pdf.add_page(first_page) |
39 | 38 |
|
40 | | -with Path("first_page.pdf").open(mode="wb") as output_file: |
41 | | - pdf_writer.write(output_file) |
| 39 | +output_pdf.write("first_page.pdf") |
42 | 40 |
|
43 | 41 |
|
44 | 42 | # ------------------------------------ |
45 | 43 | # Extracting Multiple Pages From a PDF |
46 | 44 | # ------------------------------------ |
47 | 45 |
|
48 | | -from PyPDF2 import PdfFileReader, PdfFileWriter # noqa |
49 | 46 | from pathlib import Path # noqa |
50 | 47 |
|
| 48 | +from pypdf import PdfReader, PdfWriter # noqa |
| 49 | + |
51 | 50 | pdf_path = ( |
52 | 51 | Path.home() |
53 | 52 | / "creating-and-modifying-pdfs" |
54 | 53 | / "practice_files" |
55 | 54 | / "Pride_and_Prejudice.pdf" |
56 | 55 | ) |
57 | | -input_pdf = PdfFileReader(str(pdf_path)) |
| 56 | +input_pdf = PdfReader(pdf_path) |
58 | 57 |
|
59 | | -pdf_writer = PdfFileWriter() |
60 | | -for n in range(1, 4): |
61 | | - page = input_pdf.getPage(n) |
62 | | - pdf_writer.addPage(page) |
63 | | - |
64 | | -print(pdf_writer.getNumPages()) |
65 | | - |
66 | | -pdf_writer = PdfFileWriter() |
| 58 | +output_pdf = PdfWriter() |
67 | 59 |
|
68 | 60 | for page in input_pdf.pages[1:4]: |
69 | | - pdf_writer.addPage(page) |
| 61 | + output_pdf.add_page(page) |
| 62 | + |
| 63 | +print(len(output_pdf.pages)) |
70 | 64 |
|
71 | | -with Path("chapter1_slice.pdf").open(mode="wb") as output_file: |
72 | | - pdf_writer.write(output_file) |
| 65 | +output_pdf.write("chapter1.pdf") |
0 commit comments