在日常生活中,我们会发现图片格式(如JPEG、PNG)得到了广泛的设备和操作系统的支持。相比之下,PDF文件需要特定的软件才能查看或编辑。将PDF保存为图片可以确保文件在各种平台上正确显示,并且图片文件通常不可编辑,从而提供更高的保护性,防止文档内容被修改。
在将PDF文件转换为图片的过程中,我们可以逐页将PDF的内容转换成图片。本文主要介绍如何使用Spire.PDF for Python库,在Python代码中实现将PDF转换为JPG/PNG/BMP格式的图片。
Spire.PDF for Python 是一款完全独立的 PDF 开发组件,用于在 Python 程序中创建、读取、编辑、转换和保存 PDF 文档。开发人员可以使用 Spire.PDF for Python 类库来新建 PDF 文档或对现有的 PDF 文档进行处理,不需要任何第三方工具。同时,Spire.PDF for Python兼容大部分国产操作系统,如中标麒麟和中科方德等,可以在国产系统中正常运行。
Python 将指定的 PDF 页面转换为图片
Python 将整个 PDF 文档转换为多张图片
安装
本教程需要用到 Spire.PDF for Python。可通过以下 pip 命令将它们轻松安装到 VS Code 中。
pip install Spire.PDF
Python 将指定的 PDF 页面转换为图片
Spire.PDF for Python 提供 PdfDocument.SaveAsImage(int pageIndex) 方法能将指定的 PDF 页面转换为图像流。然后可以将图像流保存为 JPEG、PNG、BMP 或 EMF 图像文件。
创建一个 PdfDocument 对象
使用 PdfDocument.LoadFromFile() 方法加载 PDF 文档。
使用 PdfDocument.SaveAsImage(int pageIndex) 方法将指定页面转换为图像流。
使用 Stream.Save() 方法将图像保存为 JPG 格式。
from spire.pdf.common import *
from spire.pdf import *
# 创建PdfDocument对象
pdf = PdfDocument()
# 加载PDF文档
pdf.LoadFromFile("报告.pdf")
# 将指定PDF页面转换为图片
with pdf.SaveAsImage(2) as imageS:
# 将图片保存为jpg格式
imageS.Save("Output/PDF转JPG.jpg")
pdf.Close()
Python 将整个 PDF 文档转换为多张图片
要将 PDF 文档中的每一页都保存为单独的图片,只需将转换部分放在循环中即可。具体步骤如下:
创建一个 PdfDocument 对象
使用 PdfDocument.LoadFromFile() 方法加载 PDF 文档。
循环遍历文档中的页面,然后使用 PdfDocument.SaveAsImage() 方法将每个页面转换为图像流
使用 Stream.Save()方法将图像流保存为 PNG 格式。
from spire.pdf.common import *
from spire.pdf import *
# 创建PdfDocument对象
pdf = PdfDocument()
# 加载PDF文档
pdf.LoadFromFile("报告.pdf")
# 遍历文档中的页面
for i in range(pdf.Pages.Count):
# 将每一页都保存为图片
fileName = "PDF转图片\图片-{0:d}.png".format(i)
with pdf.SaveAsImage(i) as imageS:
imageS.Save(fileName)
pdf.Close()
网友评论