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标准库之Sys模块使用详解
May 23 Python
基于python的Tkinter编写登陆注册界面
Jun 30 Python
Python开发中爬虫使用代理proxy抓取网页的方法示例
Sep 26 Python
python3 读写文件换行符的方法
Apr 09 Python
浅谈python中requests模块导入的问题
May 18 Python
Python多线程模块Threading用法示例小结
Nov 09 Python
Windows 下更改 jupyterlab 默认启动位置的教程详解
May 18 Python
python中如何打包用户自定义模块
Sep 23 Python
python实现快速文件格式批量转换的方法
Oct 16 Python
python 爬取百度文库并下载(免费文章限定)
Dec 04 Python
自动在Windows中运行Python脚本并定时触发功能实现
Sep 04 Python
如何使用python包中的sched事件调度器
Apr 30 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 极验验证码实例讲解
2016/09/29 PHP
PHP实现的简单适配器模式示例
2017/06/22 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
thinkphp5使html5实现动态跳转的例子
2019/10/16 PHP
thinkphp5.1 框架钩子和行为用法实例分析
2020/05/25 PHP
PHP7变量处理机制修改
2021/03/09 PHP
javascript 日历提醒系统( 兼容所有浏览器 )
2009/04/07 Javascript
MooTools 1.2介绍
2009/09/14 Javascript
JQuery EasyUI 数字格式化处理示例
2014/05/05 Javascript
JavaScript计时器示例分析
2015/02/05 Javascript
JavaScript实现动态删除列表框值的方法
2015/08/12 Javascript
基于jquery实现即时检查格式是否正确的表单
2016/05/06 Javascript
简单实现JS倒计时效果
2016/12/23 Javascript
js 简易版滚动条实例(适用于移动端H5开发)
2017/06/26 Javascript
vue实现表单录入小案例
2019/09/27 Javascript
基于JavaScript判断两个对象内容是否相等
2020/01/10 Javascript
基于脚手架创建Vue项目实现步骤详解
2020/08/03 Javascript
vue flex 布局实现div均分自动换行的示例代码
2020/08/05 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
Python中对象迭代与反迭代的技巧总结
2016/09/17 Python
Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
2016/09/18 Python
python字典多键值及重复键值的使用方法(详解)
2016/10/31 Python
python自动截取需要区域,进行图像识别的方法
2018/05/17 Python
django基于restframework的CBV封装详解
2019/08/08 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
Python flask框架实现浏览器点击自定义跳转页面
2020/06/04 Python
HTML5新表单元素_动力节点Java学院整理
2017/07/12 HTML / CSS
玖熙女鞋美国官网:Nine West
2016/10/06 全球购物
阿迪达斯奥地利官方商城:adidas.at
2016/10/16 全球购物
优秀毕业生求职信
2014/06/05 职场文书
企业领导对照检查材料
2014/08/20 职场文书
四风问题自查自纠工作情况报告
2014/10/28 职场文书
先进党组织事迹材料
2014/12/26 职场文书
研究生就业推荐表导师评语
2014/12/31 职场文书
有关花店创业的计划书模板
2019/08/27 职场文书
面试必问:圣杯布局和双飞翼布局的区别
2021/05/13 HTML / CSS