Chuyển đổi PDF sang hình ảnh trong Python

Nếu bạn đang làm việc với các tệp PDF theo cách lập trình, bạn có thể cần thực hiện chuyển đổi PDF sang hình ảnh trong một số trường hợp nhất định. Ví dụ: để tạo hình thu nhỏ, hãy nhúng các trang PDF vào ứng dụng của bạn, v.v. Tuy nhiên, chuyển đổi PDF sang hình ảnh chất lượng cao là cần thiết để hiển thị chính xác nội dung trong PDF. Để đạt được điều đó, bài viết này trình bày cách chuyển đổi PDF thành hình ảnh trong Python. Với sự trợ giúp của các mẫu mã, bạn sẽ tìm hiểu cách chuyển đổi PDF sang JPG và PDF sang [PNG](https://docs.fileformat.com /hình ảnh/png/) hình ảnh.

Trình chuyển đổi PDF sang hình ảnh bằng Python

Để chuyển đổi tệp PDF sang định dạng hình ảnh, tức là JPG và PNG, chúng tôi sẽ sử dụng Aspose.PDF for Python. Đây là một thư viện Python giàu tính năng để tạo, thao tác và chuyển đổi các tệp PDF. Thư viện cung cấp kết xuất chất lượng cao các trang PDF thành hình ảnh.

Bạn có thể sử dụng lệnh pip sau để cài đặt thư viện từ PyPI.

pip install aspose-pdf

Chuyển đổi PDF sang JPG bằng Python

Sau đây là các bước để chuyển đổi các trang trong hình ảnh PDF sang JPG bằng Python.

  • Tạo một thể hiện của lớp Tài liệu để tải tệp PDF.
  • Xác định độ phân giải của hình ảnh đầu ra bằng cách sử dụng lớp Độ phân giải.
  • Tạo một thể hiện của lớp JpegDevice và gán cho nó đối tượng Độ phân giải.
  • Lặp lại các trang trong tệp PDF và trong mỗi lần lặp lại, hãy thực hiện các bước sau:
    • Tạo luồng cho tệp hình ảnh.
    • Chuyển đổi trang thành hình ảnh và lưu vào luồng bằng phương thức JpegDevice. process().
    • Đóng luồng.

Mẫu mã sau đây cho biết cách chuyển đổi tệp PDF thành hình ảnh JPG bằng Python.

import aspose.pdf as ap

input_pdf = DIR_INPUT + "many_pages.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_jpeg"

# Mở tài liệu PDF
document = ap.Document(input_pdf)

# Tạo đối tượng Độ phân giải
resolution = ap.devices.Resolution(300)
device = ap.devices.JpegDevice(resolution)

for i in range(0, len(document.pages)):
    # Tạo tập tin để lưu
    imageStream = io.FileIO(
        output_pdf + "_page_" + str(i + 1) + "_out.jpeg", "x"
    )
    
    # Chuyển đổi một trang cụ thể và lưu hình ảnh vào luồng
    device.process(document.pages[i + 1], imageStream)
    imageStream.close()  

Chuyển đổi PDF sang PNG bằng Python

Tương tự như chuyển đổi PDF sang JPG, bạn có thể chuyển đổi từng trang trong PDF sang PNG. Sự khác biệt duy nhất là phần mở rộng của tệp hình ảnh sẽ là .png trong khi tạo luồng tệp.

Mẫu mã sau đây cho biết cách chuyển đổi PDF sang PNG bằng Python.

import aspose.pdf as ap

input_pdf = DIR_INPUT + "sample.pdf"
output_pdf = DIR_OUTPUT + "convert_pdf_to_png"

# Mở tài liệu PDF
document = ap.Document(input_pdf)

# Tạo đối tượng Độ phân giải
resolution = ap.devices.Resolution(300)
device = ap.devices.PngDevice(resolution)

for i in range(0, len(document.pages)):
    # Tạo tập tin để lưu
    imageStream = io.FileIO(
        output_pdf + "_page_" + str(i + 1) + "_out.png", 'x'
    )
    
    # Chuyển đổi một trang cụ thể và lưu hình ảnh vào luồng
    device.process(document.pages[i + 1], imageStream)
    imageStream.close()

Trình chuyển đổi PDF sang hình ảnh trực tuyến

Nếu bạn muốn dùng thử tính năng chuyển đổi PDF sang hình ảnh của Aspose.PDF hoặc bạn cần chuyển đổi PDF sang hình ảnh trực tuyến, hãy sử dụng Trình chuyển đổi PDF sang hình ảnh trực tuyến của chúng tôi. Nó cho phép bạn chuyển đổi bao nhiêu tệp PDF tùy thích sang định dạng hình ảnh hoàn toàn miễn phí.

Trình chuyển đổi Python PDF sang hình ảnh miễn phí

Bạn có thể lấy giấy phép miễn phí để chuyển đổi tệp PDF sang định dạng hình ảnh mà không bị giới hạn đánh giá.

Khám phá thư viện Python PDF

Bạn có thể tìm hiểu thêm về thư viện PDF Python của chúng tôi bằng cách sử dụng tài liệu. Ngoài ra, bạn có thể thoải mái cho chúng tôi biết về các truy vấn của mình thông qua diễn đàn của chúng tôi.

Phần kết luận

Trong bài viết này, bạn đã học cách chuyển đổi tệp PDF thành hình ảnh bằng Python. Bạn đã biết cách chuyển đổi các trang trong tệp PDF thành hình ảnh JPG hoặc PNG. Ngoài ra, chúng tôi đã cung cấp cho bạn công cụ chuyển đổi PDF sang hình ảnh trực tuyến mà bạn có thể sử dụng mà không có bất kỳ giới hạn nào.

Xem thêm