使用Python将图片转换为PDF

将图片转为 PDF 的主要原因之一是为了方便共享和传输。此外,将多张图片合并成一个 PDF 文件还可以简化文件管理。之前文章详细介绍过如何使用第三方库Spire.PDF for Python将PDF文件转为图片,那么本文介绍使用同样工具在Python中实现图片转PDF文件的功能。

通过以下pip命令进行安装Python库:

pip install Spire.PDF

Python 实现图片转PDF

以下是将一个文件夹中的多张图片转换为一个PDF文件的示例。几乎每行代码都有详细注释,并且Spire.PDF for Python提供的接口也非常简单易懂,大家可直接查看。

from spire.pdf.common import *
from spire.pdf import *
import os# 创建PdfDocument对象
doc = PdfDocument()# 将页边距设置为0
doc.PageSettings.SetMargins(0.0)# 指定存放图片的文件夹路径
path = "C:\\Users\\Administrator\\Desktop\\图片\\"
files = os.listdir(path)# 遍历文件夹中的文件
for root, dirs, files in os.walk(path):for file in files:# 加载图片image = PdfImage.FromFile(os.path.join(root, file))  #FromFile(os.path.join(root, file))# 获取图片的宽度和高度width = image.PhysicalDimension.Widthheight = image.PhysicalDimension.Height# 在PDF中添加与图片相同尺寸的页面page = doc.Pages.Add(SizeF(width, height))# 从页面的 (0, 0) 处开始绘制图片page.Canvas.DrawImage(image, 0.0, 0.0, width, height)# 保存生成文件
doc.SaveToFile("图片转Pdf.pdf")
doc.Dispose()

 图片转PDF效果图:

参考:

Python PDF库下载链接icon-default.png?t=N7T8https://www.e-iceblue.cn/Downloads/Spire-PDF-Python.html

Spire.PDF for Python 安装教程icon-default.png?t=N7T8https://www.e-iceblue.cn/pdf_python_other/how-to-install-spire-pdf-for-python-in-vs-code.html

Python 操作PDF教程icon-default.png?t=N7T8https://www.e-iceblue.cn/pdfforpython/spire-pdf-for-python-program-guide-content.html

申请授权移除水印icon-default.png?t=N7T8https://www.e-iceblue.cn/misc/temporary-license.html

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/213443.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序完整实现微信支付功能(SpringBoot和小程序)

1.前言 不久前给公司实现支付功能,折腾了一阵子,终于实现了,微信支付对于小白来说真的很困难,特别是没有接触过企业级别开发的大学生更不用说,因此尝试写一篇我如何从小白实现微信小程序支付功能的吧,使用…

当老师应该选文科还是理科

教育不断发展和改革,教师职业的选择也越来越受到关注。许多人在选择专业时都会考虑成为一名教师,但对于选择文科还是理科却感到困惑。本文将探讨当老师应该选文科还是理科。 文科注重的是人文素养和社会科学方面的知识,而理科则注重自然科学和…

electron27-react-mateos:基于electron+react18仿matePad桌面系统

基于Electron27React18ArcoDesign搭建桌面版OS管理系统。 electron-react-mateos 基于最新前端跨端技术栈electron27.xreact18arco-designzustand4sortablejs构建的一款仿制matePad界面多层级路由管理OS系统。 ElectronReactOS支持桌面多路由配置,新开窗口弹窗开启路…

windows电脑定时开关机设置

设置流程 右击【此电脑】>【管理】 【任务计划程序】>【创建基本任务】 gina 命令 查看 已经添加的定时任务从哪看?这里: 往下滑啦,看你刚才添加的任务:

61 权限提升-RedisPostgre令牌窃取进程注入

目录 演示案例:Redis数据库权限提升-计划任务PostgreSQL数据库权限提升Windows2008&7令牌窃取提升-本地Windows2003&10进程注入提升-本地pinjector进程注入工具针对-win2008以前操作系统pexec64 32进程注入工具针对-win2008及后操作系统- (佛系) 涉及资源: postgersql是…

【经验分享】在vm中安装openEuler及使用yum安装openGauss

1.前言 随着互联网时代对数据库的新要求,以PostgreSQL为基础的开源数据库openGauss应运而生。openGauss在保持PostgreSQL接口兼容的前提下,对其查询优化器、高可用特性等进行了全面优化,实现了超高性能。 同时,openGauss作为社区项目,新增功能持续丰富。优点是查询性能高、可…

BMS实战: BMS产品介绍,电池外观分析,电芯种类分析,焊接方式分析,充电方式,电压平台,电芯型号分析。

快速入门的办法就是了解产品,了解现在市面上正在流通的成熟产品方案。光看基础知识是没有效果的。 首先我们找到了一张市面上正在出售的电池pack包。 图片来源网上,侵权删 电池外观分析 外壳: 一般是金属外壳,大部分都是铁壳加喷漆,特殊材质可以定制。 提手 一般是…

Word怎么看字数?简单教程分享!

“我在写文章时,总是想看看写了多少字。但是我发现我的Word无法看到字数。在Word中应该怎么查看字数呢?请帮帮我!” Word是一个广泛使用的文档编辑工具。在我们编辑文章时,如果想查看写了多少字,也是可以轻松完成的。 …

2015年7月28日 Go生态洞察:GopherCon 2015综述

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

python 如何利用everything的能力快速搜索兴趣文档

演示代码 # -*- coding:UTF-8 -*- """ author: dyy contact: douyaoyuan126.com time: 2023/11/23 17:10 file: python 如何通过everything搜索兴趣文档.py desc: xxxxxx """# region 引入必要的依赖 import os模块名 DebugInfo try:from Debu…

智能医疗越发周到!新的机器人系统评估中风后的活动能力

原创 | 文 BFT机器人 中风是在医疗界上最难的解决的病例之一,全球每年有超过1500万人中风,四分之三的中风患者的手臂和手部会出现损伤、虚弱和瘫痪。 许多中风患者日常生活是依靠他们强壮的手臂来完成的,从拿一些小东西到梳头,即…

【Python】itertools模块,补充:可迭代对象、迭代器

Python中 itertools模块创建高效迭代器、处理序列数据集。 此模块所有函数返回迭代器,可用for循环获取迭代器中的内容,也可用list(...)用列表形式显示内容。 import itertools[ x for x in dir(itertools) if not x.startswith(_)] # 结果:…