Python结合ImageMagick实现多张图片合并为一个pdf文件的方法


Posted in Python onApril 24, 2018

本文实例讲述了Python结合ImageMagick实现多张图片合并为一个pdf文件的方法。分享给大家供大家参考,具体如下:

前段时间买了不少书,现在手头的书籍积累的越来越多,北京这边租住的小屋子空间越来越满了。自从习惯了笔记本触摸板的手势操作之后,我偶觉得使用电脑看电子文档也挺享受的。于是想把自己的部分书籍使用手机拍照,然后合并成一个pdf文件。

最初尝试过找成熟的Windows软件,但是始终没有找到一个好用的软件。想写脚本处理,一直也没有实现。偶然查看ImageMagick软件的说明,找到了可以批量合并的方法。于是,这个功能终于可以轻松实现了。

写了一个简单的小脚本:

import os
defCompressImage(image_name):
  os.system("convert -resize\"600x800>\" %s %s" % (image_name,image_name))
def CompressAll():
  ext_names = ['.JPG','.jpg','.jepg']
  for each_image in os.listdir('./'):
    for ext_name in ext_names:
      ifeach_image.endswith(ext_name):
        CompressImage(each_image)
        break
CompressAll()
os.system("convert*.JPG book.pdf")

脚本运行之后,生成了一个pdf文件。打开文件如下:

Python结合ImageMagick实现多张图片合并为一个pdf文件的方法

从上面的结果可以看出,图片的批量合成pdf文件的功能是实现了。自然,合成的时候需要考虑文件的排序。后期查一下排序的规律为文件重命名一下即可。

更多Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python通过函数属性实现全局变量的方法
May 16 Python
Python的Flask站点中集成xhEditor文本编辑器的教程
Jun 13 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
Nov 11 Python
flask框架实现连接sqlite3数据库的方法分析
Jul 16 Python
Django分页查询并返回jsons数据(中文乱码解决方法)
Aug 02 Python
Python中垃圾回收和del语句详解
Nov 15 Python
解决python 未发现数据源名称并且未指定默认驱动程序的问题
Dec 07 Python
Python实现微信小程序支付功能
Jul 25 Python
python通过matplotlib生成复合饼图
Feb 06 Python
vue常用指令代码实例总结
Mar 16 Python
Django REST framwork的权限验证实例
Apr 02 Python
在pycharm中文件取消用 pytest模式打开的操作
Sep 01 Python
python3+PyQt5实现柱状图
Apr 24 #Python
python3+PyQt5自定义视图详解
Apr 24 #Python
python自动重试第三方包retrying模块的方法
Apr 24 #Python
python3+PyQt5泛型委托详解
Apr 24 #Python
python去除扩展名的实例讲解
Apr 23 #Python
python3 遍历删除特定后缀名文件的方法
Apr 23 #Python
将TensorFlow的模型网络导出为单个文件的方法
Apr 23 #Python
You might like
PHP开发文件系统实例讲解
2006/10/09 PHP
PHP根据IP判断地区名信息的示例代码
2014/03/03 PHP
php中实现精确设置session过期时间的方法
2014/07/17 PHP
PHP strripos函数用法总结
2019/02/11 PHP
PHP实现微信小程序用户授权的工具类示例
2019/03/05 PHP
laravel使用数据库测试注意事项
2020/04/10 PHP
javascript jQuery $.post $.ajax用法
2008/07/09 Javascript
动感效果的TAB选项卡jquery 插件
2011/07/09 Javascript
js中取得变量绝对值的方法
2015/01/03 Javascript
jQuery获取checkboxlist的value值的方法
2015/09/27 Javascript
jquery实现垂直和水平菜单导航栏
2020/08/27 Javascript
JavaScript中如何使用cookie实现记住密码功能及cookie相关函数介绍
2016/11/10 Javascript
jQuery模拟窗口抖动效果
2017/03/15 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
2017/09/20 jQuery
详解JS转换数值函数Number()、parseInt()、parseFloat()
2018/08/24 Javascript
ES6中new Function()语法及应用实例分析
2020/02/19 Javascript
ES6扩展运算符和rest运算符用法实例分析
2020/05/23 Javascript
js实现页面导航层级指示效果
2020/08/25 Javascript
[29:23]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场1
2014/05/23 DOTA
python仿抖音表白神器
2019/04/08 Python
python实现两个文件夹的同步
2019/08/29 Python
python中if及if-else如何使用
2020/06/02 Python
python使用matplotlib的savefig保存时图片保存不完整的问题
2021/01/08 Python
python热力图实现简单方法
2021/01/29 Python
俄罗斯天然和有机产品、健康生活网上商店:Fitomarket.ru
2020/10/09 全球购物
编辑找工作求职信范文
2013/12/16 职场文书
新教师岗前培训方案
2014/06/05 职场文书
大专学生求职信
2014/07/04 职场文书
会计专业自荐书
2014/07/08 职场文书
党员个人查摆剖析材料
2014/10/16 职场文书
教代会开幕词
2015/01/28 职场文书
党员转正申请报告
2015/05/15 职场文书
贴吧吧主申请感言
2015/08/03 职场文书
2016年保险公众宣传日活动总结
2016/04/05 职场文书
MySQL创建表操作命令分享
2022/03/25 MySQL
CSS使用Flex和Grid布局实现3D骰子
2022/08/05 HTML / CSS