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编写android截屏脚本双击运行即可
Jul 21 Python
低版本中Python除法运算小技巧
Apr 05 Python
python处理xml文件的方法小结
May 02 Python
详解python里使用正则表达式的分组命名方式
Oct 24 Python
python编程实现12306的一个小爬虫实例
Dec 27 Python
Python requests库用法实例详解
Aug 14 Python
python实现kmp算法的实例代码
Apr 03 Python
python Tcp协议发送和接收信息的例子
Jul 22 Python
python判断自身是否正在运行的方法
Aug 08 Python
Python List列表对象内置方法实例详解
Oct 22 Python
Python venv虚拟环境配置过程解析
Jul 08 Python
pytorch中的model=model.to(device)使用说明
May 24 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
递归删除一个节点以及该节点下的所有节点示例
2014/03/19 PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
php结合正则获取字符串中数字
2015/06/19 PHP
PHP读取配置文件类实例(可读取ini,yaml,xml等)
2015/07/28 PHP
php 利用array_slice函数获取随机数组或前几条数据
2015/09/30 PHP
非常有用的9个PHP代码片段
2016/04/06 PHP
php数组分页实现方法
2016/04/30 PHP
thinkPHP5 tablib标签库自定义方法详解
2017/05/10 PHP
jQuery知识点整理
2015/01/30 Javascript
基于jQuery实现多层次的手风琴效果附源码
2015/09/21 Javascript
原生js实现图片轮播特效
2015/12/18 Javascript
详解搭建一个vue-cli的移动端H5开发模板
2020/01/17 Javascript
JavaScript快速调试的两个技巧
2020/11/04 Javascript
关于angular 8.1使用过程中的一些记录
2020/11/25 Javascript
[46:58]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第一场 12.17
2020/12/19 DOTA
python里大整数相乘相关技巧指南
2014/09/12 Python
Python中几个比较常见的名词解释
2015/07/04 Python
Python解析最简单的验证码
2016/01/07 Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
2018/05/11 Python
python3个性签名设计实现代码
2018/06/19 Python
python编辑用户登入界面的实现代码
2018/07/16 Python
python实现汉诺塔算法
2021/03/01 Python
浅析Python 中几种字符串格式化方法及其比较
2019/07/02 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
DJI大疆无人机官方商城:全球领先的无人飞行器研发和生产商
2016/12/21 全球购物
世界上最大的在线学习和教学市场:Udemy
2017/11/08 全球购物
什么是继承
2013/12/07 面试题
办公室主任竞聘演讲稿
2014/05/15 职场文书
主要负责人任命书
2014/06/06 职场文书
办理房产证委托书
2014/09/18 职场文书
青年联谊会致辞
2015/07/31 职场文书
MYSQL 表的全面总结
2021/11/11 MySQL
Python&Matlab实现灰狼优化算法的示例代码
2022/03/21 Python
Java工作中实用的代码优化技巧分享
2022/04/21 Java/Android
MYSQL常用函数介绍
2022/05/05 MySQL