用python 制作图片转pdf工具


Posted in Python onJanuary 30, 2015

最近因为想要看漫画,无奈下载的漫画是jpg的格式,网上的转换器还没一个好用的,于是乎就打算用python自己DIY一下:
这里主要用了reportlab。开始打算随便写几行,结果为若干坑纠结了挺久,于是乎就想想干脆把代码写好点吧。

实现了以下的几项功能:
将当前文件夹下的图片保存到一个pdf中,支持选择pdf大小等
如果有需要可以遍历它下面的所有文件夹
简单的来说完全满足我将漫画转成pdf格式的需求了。

碰到了一些问题,这里记录下:
一、中文路径:

这个实在是略蛋疼,总之就是尽量都decode一遍。然后注意win下的路径是\,要将其转化成/。然后路径遍历的时候也要注意路径怎么写的。

二、reportlab使用

这个说实话很简单,因为没考虑加点文字什么的其实就一句代码了

c.drawImage(filelist[i] , 0,0,maxw,maxh)

注意文件名也要各种decode啊。
总之借助强大的python有效代码就30行左右吧,代码地址

三、pyInstall的打包问题

开始是打算用py2exe结果打算接个简单的gui(真的是很简单)就开始跟我各种错,改的差不多想整成一个exe的时候有给我来个64bit not support。然后就转投pyInstall了,不过事情远不是那么顺利,如果用的是2.1版的话你会发现又有个巨大的bug--打包出来的exe居然不能放在中文路径下,于是乎各种找解决方案,然后发现了两种解决途径,一种是有个修改的版本(https://github.com/dkw72n/pyinstaller.git),另一种是选择2.0版。这个解决之后感觉这个比py2exe好多了,强烈推荐!
简单说下使用过程:
首先是安装:
1、下载安装pywin32;
2、下载pyInstall2.0版本(我觉得这样最好)
3、下载upx然后将文件夹中的upx.exe移动到pyInstall文件夹中
这样就完成了,连安装都不用(当然你安装也行。。。)
使用的话就是

python pyinstaller.py -F c:\scripts\main.py

如果不想要黑框的话再加个-w的参数就好。其他参数:

-F, --onefile Py代码只有一个文件
-D, --onedir Py代码放在一个目录中(默认是这个)
-K, --tk 包含TCL/TK
-d, --debug 生成debug模式的exe文件
-w, --windowed, --noconsole 窗体exe文件(Windows Only)
-c, --nowindowed, --console 控制台exe文件(Windows Only)
-X, --upx 使用upx压缩exe文件
-o DIR, --out=DIR 设置spec文件输出的目录,默认在PyInstaller同目录
--icon= 加入图标(Windows Only)
-v FILE, --version=FILE 加入版本信息文件
最后pyqt了个丑陋的缩水的界面(好吧。。我承认我真不太会写)

用python 制作图片转pdf工具

用python 制作图片转pdf工具

打包大小9M,算是可以接受了
运行效果(还不错啦):
用python 制作图片转pdf工具

以上就是本文的全部内容了,希望小伙伴们喜欢。

Python 相关文章推荐
Python列表推导式的使用方法
Nov 21 Python
编写Python脚本把sqlAlchemy对象转换成dict的教程
May 29 Python
Python读取指定目录下指定后缀文件并保存为docx
Apr 23 Python
恢复百度云盘本地误删的文件脚本(简单方法)
Oct 21 Python
解决Python3.5+OpenCV3.2读取图像的问题
Dec 05 Python
PyQt5 对图片进行缩放的实例
Jun 18 Python
Python3实现汉语转换为汉语拼音
Jul 08 Python
Django框架模板用法入门教程
Nov 04 Python
python 实现两个npy档案合并
Jul 01 Python
pycharm中使用request和Pytest进行接口测试的方法
Jul 31 Python
Python基于argparse与ConfigParser库进行入参解析与ini parser
Feb 02 Python
Python可变集合和不可变集合的构造方法大全
Dec 06 Python
Python是编译运行的验证方法
Jan 30 #Python
Python的类实例属性访问规则探讨
Jan 30 #Python
Python中的作用域规则详解
Jan 30 #Python
Python中使用Boolean操作符做真值测试实例
Jan 30 #Python
Python中的zip函数使用示例
Jan 29 #Python
Python的另外几种语言实现
Jan 29 #Python
python中使用xlrd、xlwt操作excel表格详解
Jan 29 #Python
You might like
PHP中,文件上传
2006/12/06 PHP
带密匙的php加密解密示例分享
2014/01/29 PHP
PHP自定义函数实现数组比较功能示例
2017/10/19 PHP
Javascript实例教程(19) 使用HoTMetal(2)
2006/12/23 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
IE6中使用position导致页面变形的解决方案(js代码)
2011/01/09 Javascript
jQuery 取值、赋值的基本方法整理
2014/03/31 Javascript
JS实现左右拖动改变内容显示区域大小的方法
2015/10/13 Javascript
JS实现来回出现文字的状态栏特效代码
2015/10/31 Javascript
js实现上传并压缩图片效果
2018/01/10 Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
2019/02/08 Javascript
Vue中的组件及路由使用实例代码详解
2019/05/22 Javascript
微信小程序点击item使之滚动到屏幕中间位置
2020/03/25 Javascript
Python3实现发送QQ邮件功能(html)
2017/12/15 Python
Python面向对象之接口、抽象类与多态详解
2018/08/27 Python
对Python 语音识别框架详解
2018/12/24 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
2020/01/06 Python
python不使用for计算两组、多个矩形两两间的iou方式
2020/01/18 Python
Python使用enumerate获取迭代元素下标
2020/02/03 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
CSS3 clip-path 用法介绍详解
2018/03/01 HTML / CSS
CSS3 box-sizing属性详解
2016/11/15 HTML / CSS
HTML5实现无刷新修改URL的方法
2019/11/14 HTML / CSS
Emporio Armani腕表天猫官方旗舰店:乔治·阿玛尼为年轻人设计的副线品牌
2017/07/02 全球购物
100%有机精油,美容油:House of Pure Essence
2018/10/30 全球购物
护士自我鉴定范文
2013/10/06 职场文书
大学生毕业自荐信
2013/10/10 职场文书
体育教学随笔感言
2014/02/24 职场文书
廉洁校园实施方案
2014/05/25 职场文书
2014年班组长工作总结
2014/11/20 职场文书
债务纠纷起诉书
2015/05/20 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书
2019毕业典礼主持词!
2019/07/05 职场文书
MySQL里面的子查询的基本使用
2021/08/02 MySQL
MySQL普通表如何转换成分区表
2022/05/30 MySQL