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实现的简单发送邮件脚本分享
Nov 07 Python
python之DataFrame实现excel合并单元格
Feb 22 Python
python下解压缩zip文件并删除文件的实例
Apr 24 Python
浅谈python中requests模块导入的问题
May 18 Python
python三引号输出方法
Feb 27 Python
Python魔法方法功能与用法简介
Apr 04 Python
python 搜索大文件的实例代码
Jul 08 Python
对Python中小整数对象池和大整数对象池的使用详解
Jul 09 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
Aug 13 Python
如何基于python生成list的所有的子集
Nov 11 Python
python如何判断IP地址合法性
Apr 05 Python
pytorch 如何使用batch训练lstm网络
May 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
Linux fgetcsv取得的数组元素为空字符串的解决方法
2011/11/25 PHP
php将access数据库转换到mysql数据库的方法
2014/12/24 PHP
十个PHP高级应用技巧果断收藏
2015/09/25 PHP
javascript 基础篇3 类,回调函数,内置对象,事件处理
2012/03/14 Javascript
node.js中的events.emitter.listeners方法使用说明
2014/12/10 Javascript
jQuery 处理页面的事件详解
2015/01/20 Javascript
angularjs自定义ng-model标签的属性
2016/01/21 Javascript
JS组件系列之Bootstrap Icon图标选择组件
2016/01/28 Javascript
浅谈JavaScript对象的创建方式
2016/06/13 Javascript
js以及jquery实现手风琴效果
2020/04/17 Javascript
canvas实现简易的圆环进度条效果
2017/02/28 Javascript
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
在vue中使用SockJS实现webSocket通信的过程
2018/08/29 Javascript
详解vue-element Tree树形控件填坑路
2019/03/26 Javascript
jQuery中DOM操作原则实例分析
2019/08/01 jQuery
JavaScript基于面向对象实现的无缝滚动轮播示例
2020/01/17 Javascript
在vue中使用jsonp进行跨域请求接口操作
2020/10/29 Javascript
JavaScript 实现继承的几种方式
2021/02/19 Javascript
python 实现敏感词过滤的方法
2019/01/21 Python
pandas数据筛选和csv操作的实现方法
2019/07/02 Python
pycharm配置当鼠标悬停时快速提示方法参数
2019/07/31 Python
python 绘制正态曲线的示例
2020/09/24 Python
HTML+CSS3 模仿Windows7 桌面效果
2010/06/17 HTML / CSS
three.js模拟实现太阳系行星体系功能
2019/09/03 HTML / CSS
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
应届生煤化工求职信
2013/10/21 职场文书
外语学院毕业生的自我鉴定
2013/11/28 职场文书
红领巾广播站广播稿
2014/02/01 职场文书
《乞巧》教学反思
2014/02/27 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
体育专业求职信
2014/07/16 职场文书
创先争优活动党员公开承诺书
2014/08/29 职场文书
设备收款委托书范本
2014/10/02 职场文书
2015年乡镇卫生院工作总结
2015/04/22 职场文书
如何计划开一家便利店?
2019/07/31 职场文书
AudioContext 实现音频可视化(web技术分享)
2022/02/24 Javascript