用python 制作圖片轉(zhuǎn)pdf工具
最近因?yàn)橄胍绰?,無奈下載的漫畫是jpg的格式,網(wǎng)上的轉(zhuǎn)換器還沒一個(gè)好用的,于是乎就打算用python自己DIY一下:
這里主要用了reportlab。開始打算隨便寫幾行,結(jié)果為若干坑糾結(jié)了挺久,于是乎就想想干脆把代碼寫好點(diǎn)吧。
實(shí)現(xiàn)了以下的幾項(xiàng)功能:
將當(dāng)前文件夾下的圖片保存到一個(gè)pdf中,支持選擇pdf大小等
如果有需要可以遍歷它下面的所有文件夾
簡單的來說完全滿足我將漫畫轉(zhuǎn)成pdf格式的需求了。
碰到了一些問題,這里記錄下:
一、中文路徑:
這個(gè)實(shí)在是略蛋疼,總之就是盡量都decode一遍。然后注意win下的路徑是\,要將其轉(zhuǎn)化成/。然后路徑遍歷的時(shí)候也要注意路徑怎么寫的。
二、reportlab使用
這個(gè)說實(shí)話很簡單,因?yàn)闆]考慮加點(diǎn)文字什么的其實(shí)就一句代碼了
c.drawImage(filelist[i] , 0,0,maxw,maxh)
注意文件名也要各種decode啊。
總之借助強(qiáng)大的python有效代碼就30行左右吧,代碼地址
三、pyInstall的打包問題
開始是打算用py2exe結(jié)果打算接個(gè)簡單的gui(真的是很簡單)就開始跟我各種錯(cuò),改的差不多想整成一個(gè)exe的時(shí)候有給我來個(gè)64bit not support。然后就轉(zhuǎn)投pyInstall了,不過事情遠(yuǎn)不是那么順利,如果用的是2.1版的話你會發(fā)現(xiàn)又有個(gè)巨大的bug--打包出來的exe居然不能放在中文路徑下,于是乎各種找解決方案,然后發(fā)現(xiàn)了兩種解決途徑,一種是有個(gè)修改的版本(https://github.com/dkw72n/pyinstaller.git),另一種是選擇2.0版。這個(gè)解決之后感覺這個(gè)比py2exe好多了,強(qiáng)烈推薦!
簡單說下使用過程:
首先是安裝:
1、下載安裝pywin32;
2、下載pyInstall2.0版本(我覺得這樣最好)
3、下載upx然后將文件夾中的upx.exe移動到pyInstall文件夾中
這樣就完成了,連安裝都不用(當(dāng)然你安裝也行。。。)
使用的話就是
python pyinstaller.py -F c:\scripts\main.py
如果不想要黑框的話再加個(gè)-w的參數(shù)就好。其他參數(shù):
-F, --onefile Py代碼只有一個(gè)文件
-D, --onedir Py代碼放在一個(gè)目錄中(默認(rèn)是這個(gè))
-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 設(shè)置spec文件輸出的目錄,默認(rèn)在PyInstaller同目錄
--icon= 加入圖標(biāo)(Windows Only)
-v FILE, --version=FILE 加入版本信息文件
最后pyqt了個(gè)丑陋的縮水的界面(好吧。。我承認(rèn)我真不太會寫)
打包大小9M,算是可以接受了
運(yùn)行效果(還不錯(cuò)啦):
以上就是本文的全部內(nèi)容了,希望小伙伴們喜歡。
- Python自制一個(gè)PDF轉(zhuǎn)PNG圖片小工具
- 詳解python實(shí)現(xiàn)多張多格式圖片轉(zhuǎn)PDF并打包成exe
- Python自動化辦公之圖片轉(zhuǎn)PDF的實(shí)現(xiàn)
- Python實(shí)現(xiàn)文字pdf轉(zhuǎn)換圖片pdf效果
- Python把圖片轉(zhuǎn)化為pdf代碼實(shí)例
- 利用python將圖片版PDF轉(zhuǎn)文字版PDF
- Python 將pdf轉(zhuǎn)成圖片的方法
- windows下Python實(shí)現(xiàn)將pdf文件轉(zhuǎn)化為png格式圖片的方法
- Python的pdfplumber庫將pdf轉(zhuǎn)為圖片的實(shí)現(xiàn)
相關(guān)文章
詳解python中g(shù)roupby函數(shù)通俗易懂
這篇文章主要介紹了詳解python中g(shù)roupby函數(shù)通俗易懂,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05Python新手入門webpy小應(yīng)用開發(fā)
本文主要介紹了Python新手入門webpy小應(yīng)用開發(fā),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07Python使用random.shuffle()打亂列表順序的方法
今天小編就為大家分享一篇Python使用random.shuffle()打亂列表順序的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11淺談在django中使用filter()(即對QuerySet操作)時(shí)踩的坑
這篇文章主要介紹了淺談在django中使用filter()(即對QuerySet操作)時(shí)踩的坑,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Python實(shí)現(xiàn)控制臺中的進(jìn)度條功能代碼
下面小編就為大家分享一篇Python實(shí)現(xiàn)控制臺中的進(jìn)度條功能代碼,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12Pytorch.nn.conv2d 過程驗(yàn)證方式(單,多通道卷積過程)
今天小編就為大家分享一篇Pytorch.nn.conv2d 過程驗(yàn)證方式(單,多通道卷積過程),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01Python 通過爬蟲實(shí)現(xiàn)GitHub網(wǎng)頁的模擬登錄的示例代碼
這篇文章主要介紹了Python 通過爬蟲實(shí)現(xiàn)GitHub網(wǎng)頁的模擬登錄的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08