用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修改操作系统时间的方法
May 18 Python
Phantomjs抓取渲染JS后的网页(Python代码)
May 13 Python
Flask框架实现给视图函数增加装饰器操作示例
Jul 16 Python
Flask框架踩坑之ajax跨域请求实现
Feb 22 Python
详解pytorch 0.4.0迁移指南
Jun 16 Python
浅谈python累加求和+奇偶数求和_break_continue
Feb 25 Python
Python configparser模块常用方法解析
May 22 Python
Python结合Window计划任务监测邮件的示例代码
Aug 05 Python
python exit出错原因整理
Aug 31 Python
Python如何截图保存的三种方法(小结)
Sep 01 Python
Django nginx配置实现过程详解
Sep 10 Python
协程Python 中实现多任务耗资源最小的方式
Oct 19 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程序员工具
2008/05/26 PHP
php中simplexml_load_string使用实例分享
2014/02/13 PHP
Codeigniter发送邮件的方法
2015/03/19 PHP
php使用GD库创建图片缩略图的方法
2015/06/10 PHP
php实现的日历程序
2015/06/18 PHP
php禁用函数设置及查看方法详解
2016/07/25 PHP
docker-compose部署php项目实例详解
2019/07/30 PHP
jQuery 联动日历实现代码
2012/05/31 Javascript
Javascript实现简单二级下拉菜单实例
2014/06/15 Javascript
推荐 21 款优秀的高性能 Node.js 开发框架
2014/08/18 Javascript
Javascript实现Web颜色值转换
2015/02/05 Javascript
window.open()实现post传递参数
2015/03/12 Javascript
javascript事件模型介绍
2016/05/31 Javascript
js基于setTimeout与setInterval实现多线程
2016/06/17 Javascript
Three.js学习之几何形状
2016/08/01 Javascript
Jquery针对tr td的一些实用操作方法(必看篇)
2016/10/05 Javascript
JavaScript使用链式方法封装jQuery中CSS()方法示例
2017/04/07 jQuery
vue数据双向绑定的注意点
2017/06/23 Javascript
jQuery实现新闻播报滚动及淡入淡出效果示例
2018/03/23 jQuery
Vue引入jquery实现平滑滚动到指定位置
2018/05/09 jQuery
egg.js的基本使用和调用数据库的方法示例
2019/05/18 Javascript
layer弹出层倒计时关闭的实现方法
2019/09/27 Javascript
Python数据类型详解(二)列表
2016/05/08 Python
5个很好的Python面试题问题答案及分析
2018/01/19 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
Flask-WTF表单的使用方法
2019/07/12 Python
Python利用WMI实现ping命令的例子
2019/08/14 Python
Python如何通过Flask-Mail发送电子邮件
2020/01/29 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
汉米尔顿手表官网:Hamilton
2020/09/13 全球购物
四年的个人工作自我评价
2013/12/10 职场文书
三八节主持词
2014/03/17 职场文书
2014年全国爱牙日宣传活动方案
2014/09/21 职场文书
承诺保证书格式
2015/02/28 职场文书
2015年小学二年级班主任工作总结
2015/05/21 职场文书
MySQL 语句执行顺序举例解析
2022/06/05 MySQL