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

Преобразование PDF в изображения имеет ряд преимуществ, включая улучшенную совместимость, гибкость редактирования, упрощенный обмен и оптимизированное визуальное представление. Преобразование PDF-файлов в изображения обеспечивает совместимость на различных платформах и устройствах, поскольку изображения широко поддерживаются и легко просматриваются. Кроме того, это позволяет использовать более гибкие возможности редактирования, поскольку изображения можно редактировать с помощью различных программ для графического дизайна.
В этой статье мы покажем, как конвертировать PDF-файлы в различные форматы изображений с помощью Spire.PDF for Python. Поддерживаемые форматы включают PNG, JPG, EMF, SVG и TIFF.
- Преобразование PDF в PNG или JPG в Python
- Конвертирование PDF в SVG в Python
- Конвертирование PDF в TIFF в Python
Установите Spire.PDF с помощью Pip
Spire PDF for Python — это специализированная библиотека, созданная для разработчиков для создания, чтения и управления PDF — файлами в приложениях Python. Вы можете легко установить его с помощью следующей команды PIP.
pip install Spire.PDF
Преобразование PDF в PNG или JPG в Python
Spire.PDF for Python предоставляет метод SaveAsImage, который позволяет пользователям преобразовывать определенные страницы PDF-документа в поток растровых изображений. Затем этот поток изображений можно экспортировать в файл изображения с расширением PNG или JPG.
Следующий фрагмент кода показывает, как преобразовать PDF-документ в несколько файлов PNG и JPG в Python. Из одной страницы PDF получается один файл изображения.
from spire.pdf.common import *
from spire.pdf import *
# Create a PdfDocument object
doc = PdfDocument()
# Load a PDF document
doc.LoadFromFile("C:\Users\Administrator\Desktop\Input.pdf")
# Iterate through all pages in the document
for i in range(doc.Pages.Count):
# Convert a specific page to an image stream
with doc.SaveAsImage(i) as image:
# Save the image stream as a PNG file
image.Save("Output\ConversionResults\ToImage-{0:d}.png".format(i))
# Save the image stream as a JPG file
image.Save("Output\ConversionResults\ToImage-{0:d}.jpg".format(i))
# Close the document
doc.Close()
Конвертирование PDF в SVG в Python
Чтобы завершить преобразование PDF в SVG-файлы, можно вызвать метод SaveToFile(filename: str, startIndex: int, endIndex: int, fileFormat: FileFormat) и указать формат выходного файла как SVG. Следующий фрагмент кода Python загружает PDF-документ и сохраняет каждую страницу как отдельный SVG-файл.
from spire.pdf.common import *
from spire.pdf import *
# Create a PdfDocument object
doc = PdfDocument()
# Load a PDF document
doc.LoadFromFile("C:\Users\Administrator\Desktop\Input.pdf")
# Iterate through all pages in the document
for i in range(doc.Pages.Count):
# Convert a specific page to a SVG file
doc.SaveToFile("Output\ConversionResults\ToImage-{0:d}.svg".format(i), i, i, FileFormat.SVG)
# Close the document
doc.Close()
Конвертирование PDF в TIFF в Python
Spire.PDF for Python не предоставляет прямого метода преобразования PDF в TIFF. Однако вы можете объединить графику Bitmap, созданную Spire.PDF, в один документ TIFF. Для этого необходимо дополнительно установить Python Imaging Library (PIL), которая является бесплатной библиотекой с открытым исходным кодом для работы с различными форматами графических файлов с помощью языка Python.
pip install Pillow
Следующий код показывает, как преобразовать PDF-документ в многостраничный TIFF-файл с помощью Spire.PDF for Python и PIL.
from spire.pdf.common import *
from spire.pdf import *
from PIL import Image
from io import BytesIO
# Create a PdfDocument object
doc = PdfDocument()
# Load a PDF document
doc.LoadFromFile("C:\Users\Administrator\Desktop\Input.pdf")
# Create an empty list to store PIL Images
images = []
# Iterate through all pages in the document
for i in range(doc.Pages.Count):
# Convert a specific page to an image stream
with doc.SaveAsImage(i) as imageData:
# Open the image stream as a PIL image
img = Image.open(BytesIO(imageData.ToArray()))
# Append the PIL image to list
images.append(img)
# Save the PIL Images as a multi-page TIFF file
images[0].save("Output/Result.tiff", save_all=True, append_images=images[1:])
# Close the document
doc.Close()
Выводы
В этой статье мы узнали, как конвертировать PDF в изображение. Будучи продвинутой библиотекой Python, Spire.PDF for Python позволяет разработчикам выполнять широкий спектр операций с PDF-документами, например:
Преобразование изображений в PDF с помощью Python