用python 制作图片转pdf工具

作者:hebedich 时间:2023-02-13 09:14:51 

最近因为想要看漫画,无奈下载的漫画是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,图片转pdf
0
投稿

猜你喜欢

  • SQL Server口令 sql server安全性第1/2页

    2024-01-22 19:00:15
  • python 如何把classification_report输出到csv文件

    2023-01-31 21:02:02
  • golang beego框架环境搭建过程

    2024-02-13 03:29:39
  • MySQL执行计划的深入分析

    2024-01-19 18:44:16
  • CSS布局之浮动(一)两列布局

    2008-08-18 21:24:00
  • Python获取基金网站网页内容、使用BeautifulSoup库分析html操作示例

    2022-10-04 00:34:40
  • pyqt5 QProgressBar清空进度条的实例

    2022-11-28 03:04:08
  • python调用DLL与EXE文件截屏对比分析

    2022-06-01 08:19:15
  • python实现TF-IDF算法解析

    2021-06-02 03:27:51
  • 前端页面文件拖拽上传模块js代码示例

    2023-09-20 02:15:30
  • python 实现提取PPT中所有的文字

    2023-05-01 04:21:35
  • 用python如何绘制表格不同颜色的excel

    2022-08-09 22:05:11
  • 选择python进行数据分析的理由和优势

    2022-03-31 10:51:01
  • Python爬取APP下载链接的实现方法

    2022-04-10 02:12:27
  • 关于Python的一些学习总结

    2022-01-10 11:23:41
  • 解决Python httpx 运行过程中无限阻塞的问题

    2023-03-26 12:17:05
  • mysql建表常用sql语句个人经验分享

    2024-01-27 12:30:48
  • Pytest执行unittest TestSuite(测试套件)的实现方法

    2023-12-23 06:05:14
  • Python实现蒙特卡洛模拟的示例代码

    2023-03-09 14:27:23
  • CSS的书写顺序规范

    2008-06-12 13:51:00
  • asp之家 网络编程 m.aspxhome.com