Преобразование PDF в изображение в Python

Если вы работаете с файлами PDF программно, в некоторых случаях вам может потребоваться выполнить преобразование PDF в изображение. Например, для создания эскизов, встраивания страниц PDF в приложение и т. д. Однако для точного отображения содержимого в формате PDF требуется высококачественное преобразование PDF в изображение. Для этого в этой статье показано, как преобразовать PDF в изображения в Python. С помощью примеров кода вы узнаете, как конвертировать PDF в JPG и PDF в PNG. /image/png/) изображения.

Конвертер PDF в изображения Python

Для преобразования файлов PDF в форматы изображений, т. е. JPG и PNG, мы будем использовать Aspose.PDF for Python. Это многофункциональная библиотека Python для создания, обработки и преобразования PDF-файлов. Библиотека обеспечивает качественный рендеринг страниц PDF в изображения.

Вы можете использовать следующую команду pip для установки библиотеки из PyPI.

pip install aspose-pdf

Преобразование PDF в JPG в Python

Ниже приведены шаги для преобразования страниц PDF в изображения JPG в Python.

  • Создайте экземпляр класса Document для загрузки файла PDF.
  • Определите разрешение выходных изображений, используя класс разрешения.
  • Создайте экземпляр класса JpegDevice и назначьте ему объект Resolution.
  • Пролистайте страницы в файле PDF и в каждой итерации выполните следующие шаги:
    • Создайте поток для файла изображения.
    • Преобразуйте страницу в изображение и сохраните ее в потоке, используя метод JpegDevice.process().
    • Закройте поток.

В следующем примере кода показано, как преобразовать файл PDF в изображения JPG в Python.

import aspose.pdf as ap

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

# Открыть PDF-документ
document = ap.Document(input_pdf)

# Создать объект разрешения
resolution = ap.devices.Resolution(300)
device = ap.devices.JpegDevice(resolution)

for i in range(0, len(document.pages)):
    # Создать файл для сохранения
    imageStream = io.FileIO(
        output_pdf + "_page_" + str(i + 1) + "_out.jpeg", "x"
    )
    
    # Преобразование определенной страницы и сохранение изображения в поток
    device.process(document.pages[i + 1], imageStream)
    imageStream.close()  

Преобразование PDF в PNG в Python

Подобно преобразованию PDF в JPG, вы можете преобразовать каждую страницу PDF в PNG. Единственное отличие состоит в том, что при создании файлового потока расширение файла изображения будет .png.

В следующем примере кода показано, как преобразовать PDF в PNG в Python.

import aspose.pdf as ap

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

# Открыть PDF-документ
document = ap.Document(input_pdf)

# Создать объект разрешения
resolution = ap.devices.Resolution(300)
device = ap.devices.PngDevice(resolution)

for i in range(0, len(document.pages)):
    # Создать файл для сохранения
    imageStream = io.FileIO(
        output_pdf + "_page_" + str(i + 1) + "_out.png", 'x'
    )
    
    # Преобразование определенной страницы и сохранение изображения в поток
    device.process(document.pages[i + 1], imageStream)
    imageStream.close()

Онлайн-конвертер PDF в изображения

Если вы хотите попробовать функцию преобразования PDF в изображение Aspose.PDF или вам нужно преобразовать PDF в изображения онлайн, используйте наш Онлайн-конвертер PDF в изображения. Он позволяет вам конвертировать столько файлов PDF, сколько вы хотите, в форматы изображений абсолютно бесплатно.

Бесплатный конвертер PDF в изображения Python

Вы можете получить бесплатную лицензию для преобразования файлов PDF в форматы изображений без ограничений на оценку.

Изучите библиотеку Python PDF

Вы можете узнать больше о нашей библиотеке Python PDF, используя документацию. Кроме того, вы можете сообщить нам о своих вопросах через наш форум.

Заключение

В этой статье вы узнали, как конвертировать PDF-файлы в изображения в Python. Вы видели, как конвертировать страницы файла PDF в изображения JPG или PNG. Кроме того, мы предоставили вам наш онлайн-конвертер PDF в изображения, который вы можете использовать без каких-либо ограничений.

Смотрите также