Thư viện Python nguồn mở để xử lý tệp PDF

API Python miễn phí cho phép tuyến tính hóa các tệp PDF và truy cập các tệp PDF được mã hóa. Nó hỗ trợ tạo PDF từ đầu, sao chép các trang từ PDF này sang PDF khác, tách hoặc hợp nhất các tệp PDF và nhiều hơn nữa.

PikePDF là một thư viện PDF Python rất đơn giản cho phép các nhà phát triển phần mềm làm việc với các tệp PDF bên trong các ứng dụng Python. Nó dựa trên QPDF, một thư viện sửa chữa và thao tác PDF mạnh mẽ. PikePDF là một thư viện chuyển đổi nội dung PDF và cung cấp quyền truy cập cấp thấp vào các tệp PDF. Điều này có nghĩa là người dùng cần có kiến thức về nội bộ PDF và quen thuộc với các thông số kỹ thuật PDF. Thư viện là nguồn mở và có sẵn theo giấy phép MIT để sử dụng công cộng. Thư viện là nguồn mở và có sẵn theo Giấy phép MPL-2.0.

PikePDF cung cấp hỗ trợ cho việc tuyến tính hóa các tệp PDF và quyền truy cập vào các tệp PDF được mã hóa. Nó đã bao gồm một bộ rất mạnh mẽ các tính năng liên quan đến quản lý PDF như tạo PDF từ đầu, sao chép các trang từ một PDF sang một trang khác, tách hoặc hợp nhất các tệp PDF, trích xuất hình ảnh hoặc văn bản từ PDF, thay thế nội dung trong PDF, hỗ trợ sửa chữa PDF, trang hỗ trợ cài đặt, quản lý siêu dữ liệu PDF, làm việc với mật khẩu được bảo vệ, chỉnh sửa siêu dữ liệu PDF XMP, chuyển đổi các tệp PDF hiện có và hơn thế nữa.

.

Previous Next

Bắt đầu với PikePDF

PikePDF yêu cầu Python 3.6 trở lên. Bạn có thể cài đặt PikePDF bằng pip. Vui lòng sử dụng lệnh sau để cài đặt nó.

Cài đặt PikePDF qua pip

 pip install pikepdf

Sao chép các trang từ một PDF sang PDF khác qua Python

Thư viện PikePDF mã nguồn mở cung cấp khả năng cho phép các nhà phát triển phần mềm sao chép trang từ PDF này sang PDF khác chỉ với một vài dòng mã Python. Việc sao chép các trang giữa các đối tượng PDF sẽ tạo ra một bản sao cạn của trang nguồn trong tệp PDF đích và do đó việc sửa đổi các trang sẽ không ảnh hưởng đến tài liệu PDF gốc. Cũng có thể thay thế các trang cụ thể bằng nội dung tùy chỉnh. Cũng có thể sao chép các trang trong một tệp PDF cụ thể.

Mở & Thao tác Tài liệu PDF qua Python

 # PDF Documents Manipulation 
  from pikepdf import Pdf
  new_pdf = Pdf.new()
  with Pdf.open('sample.pdf') as pdf:
    pdf.save('output.pdf') 
   # Copying pages from other PDFs
  pdf = Pdf.open('../tests/resources/fourpages.pdf')
  appendix = Pdf.open('../tests/resources/sandwich.pdf')
  pdf.pages.extend(appendix.pages)

Tách và hợp nhất PDF qua Python

Thư viện PDF PikePDF cung cấp cho các nhà phát triển phần mềm sức mạnh để truy cập các tệp PDF hiện có và chia nó thành nhiều tệp PDF một cách dễ dàng. Trong khi chia nhỏ PDF, tất cả những gì chúng tôi yêu cầu là các tệp PDF mới phải giữ các trang đích. Thư viện cũng đảm bảo truyền dữ liệu được liên kết với mỗi trang, để mỗi trang tự đứng vững. Thư viện cũng bao gồm hỗ trợ hợp nhất hoặc nối nhiều tài liệu PDF thành một tài liệu duy nhất. Cũng có thể đảo ngược thứ tự của các trang PDF chỉ với một vài dòng mã.

Tách và hợp nhất tài liệu PDF qua Python

 # PDF Splitting
  pdf = Pdf.open('../tests/resources/fourpages.pdf')
  for n, page in enumerate(pdf.pages):
  dst = Pdf.new()
  dst.pages.append(page)
  dst.save(f'{n:02d}.pdf')
  # Combine Multiple PDF pages into a single One
  from glob import glob
  pdf = Pdf.new()
  for file in glob('*.pdf'):
  src = Pdf.open(file)
  pdf.pages.extend(src.pages)
  pdf.save('merged.pdf')

Quản lý hình ảnh bên trong tài liệu PDF qua Python

Thư viện PDF PikePDF giúp các nhà phát triển phần mềm dễ dàng xử lý hình ảnh bên trong tệp PDF bằng các lệnh Python. Thư viện đã bao gồm một số chức năng quan trọng liên quan đến xử lý hình ảnh như sao chép hình ảnh trong trang PDF, mở và xem PDF, thay đổi kích thước hình ảnh, xử lý hình ảnh trong PDF, trích xuất hình ảnh từ PDF, thay thế hình ảnh, xóa hình ảnh khỏi PDF và nhiều hơn nữa .

Trích xuất hình ảnh và thay thế nó trong PDF thông qua Python

 # Extract Image & Replace PDF Images
  import zlib
  rawimage = pdfimage.obj
  pillowimage = pdfimage.as_pil_image()
  greyscale = pillowimage.convert('L')
  greyscale = greyscale.resize((32, 32))
  rawimage.write(zlib.compress(greyscale.tobytes()), filter=Name("/FlateDecode"))
  rawimage.ColorSpace = Name("/DeviceGray")
  rawimage.Width, rawimage.Height = 32, 32

Xử lý siêu dữ liệu PDF qua Python

Siêu dữ liệu PDF bao gồm thông tin rất hữu ích về tài liệu PDF như tên tác giả, ngày tạo và sửa đổi, từ khóa, thông tin bản quyền, v.v. Thư viện PDF PikePDF đã bao gồm đầy đủ chức năng để truy cập và đọc siêu dữ liệu, trích xuất siêu dữ liệu, xóa các mục siêu dữ liệu khỏi tài liệu PDF. Ví dụ mã sau đây cho thấy cách trích xuất siêu dữ liệu từ tài liệu PDF.

Cách trích xuất siêu dữ liệu PDF qua Python

 # Extract PDF Metadata
  import pikepdf
  import sys
  # get the target pdf file from the command-line arguments
  pdf_filename = sys.argv[1]
  # read the pdf file
  pdf = pikepdf.Pdf.open(pdf_filename)
  docinfo = pdf.docinfo
  for key, value in docinfo.items():
    print(key, ":", value)
 Tiếng Việt