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实现面向对像的ASP程序实例
Nov 10 Python
基于Python闭包及其作用域详解
Aug 28 Python
python线程池threadpool使用篇
Apr 27 Python
在CMD命令行中运行python脚本的方法
May 12 Python
flask入门之文件上传与邮件发送示例
Jul 18 Python
Python requests模块实例用法
Feb 11 Python
python爬取内容存入Excel实例
Feb 20 Python
python 求1-100之间的奇数或者偶数之和的实例
Jun 11 Python
pandas的连接函数concat()函数的具体使用方法
Jul 09 Python
python3 requests库实现多图片爬取教程
Dec 18 Python
python如何进行矩阵运算
Jun 05 Python
python数字图像处理:图像的绘制
Jun 28 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实时显示输出
2008/10/02 PHP
JavaScript与C# Windows应用程序交互方法
2007/06/29 Javascript
jQuery DIV弹出效果实现代码
2009/07/03 Javascript
jquery在Chrome下获取图片的长宽问题解决
2013/03/20 Javascript
jquery获取自定义属性(attr和prop)实例介绍
2013/04/21 Javascript
javascript的内存管理详解
2013/08/07 Javascript
js中生成map对象的方法
2014/01/09 Javascript
jQuery实现类似老虎机滚动抽奖效果
2015/08/06 Javascript
js实现新浪微博首页效果
2015/10/16 Javascript
基于JavaScript怎么实现让歌词滚动播放
2015/11/03 Javascript
学习Node.js模块机制
2016/10/17 Javascript
微信开发 消息推送实现代码
2016/10/21 Javascript
Vuex之理解Store的用法
2017/04/19 Javascript
利用javascript如何随机生成一定位数的密码
2017/09/22 Javascript
vue.js 中使用(...)运算符报错的解决方法
2018/08/09 Javascript
layui table数据修改的回显方法
2019/09/04 Javascript
JS数组扁平化、去重、排序操作实例详解
2020/02/24 Javascript
vue实现商品列表的添加删除实例讲解
2020/05/14 Javascript
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
PyQt5利用QPainter绘制各种图形的实例
2017/10/19 Python
详解opencv Python特征检测及K-最近邻匹配
2019/01/21 Python
详解Python字符串切片
2019/05/20 Python
python递归法解决棋盘分割问题
2019/07/17 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
在PyCharm中实现添加快捷模块
2020/02/12 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
pytorch使用horovod多gpu训练的实现
2020/09/09 Python
python利用线程实现多任务
2020/09/18 Python
html5的localstorage详解
2017/05/09 HTML / CSS
北美女性服装零售连锁店:maurices
2019/06/12 全球购物
冰淇淋开店创业计划书
2014/02/01 职场文书
入党积极分子自我鉴定范文
2014/03/25 职场文书
党员弘扬焦裕禄精神思想汇报
2014/09/10 职场文书
走群众路线学习心得体会
2014/10/31 职场文书
Python道路车道线检测的实现
2021/06/27 Python
如何避免mysql启动时错误及sock文件作用分析
2022/01/22 MySQL