最近因?yàn)橄胍绰嫞瑹o奈下載的漫畫是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版的話你會(huì)發(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移動(dòng)到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 控制臺(tái)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)我真不太會(huì)寫)
新聞熱點(diǎn)
疑難解答
圖片精選