注:本文轉載自公衆號:TEDxPY。python
做者是一個很是謙虛有趣的Python大牛!微信
你們感興趣的能夠關注一波他的公衆號!測試
昨天,用Python代碼將微信好友頭像組字後,在stormzhang張哥星球發了個分享,沒想到這麼多球友感興趣,不只喜獲兩位老哥讚揚,還被張哥點讚了,着實開心~字體
爲了方便各位把玩這個圖片組字,今兒我把Python代碼轉成exe可執行文件了。若是你不想看代碼轉換的細節,直接跳到程序運行吧~優化
思路3d
說來慚愧,今天在同事Mac上測試exe,我才知道Mac是不支持exe格式的。因此這裏暫時只涉及Window環境下將py文件轉爲exe文件格式的實現,經過pyinstalle來進行轉換。orm
以前的代碼,「讀取微信好友圖片」和「圖片拼接組字」兩個過程寫在了同一份代碼文件中。爲了將功能獨立實現,將代碼轉化爲對應的兩個exe文件:一個是用來獲取微信好友頭像圖片保存到本地;另外一個用來將圖片拼接成用戶自定義的漢字。blog
py轉exe圖片
首先是安裝pyinstaller和pywin32,後者下載時須要選擇對應的電腦系統和python版本。配置
生成的exe文件若是想變換圖標,須要提早準備ico圖標文件,最好對圖標圖片的背景進行透明處理。
經過執行如下命令生成對應的exe文件:
pyinstaller -F -i 圖標文件路徑 py文件路徑
生成的exe文件要與代碼配置文件放在同一文件夾中,不然可能出現閃退狀況。
接下來是程序運行部分,若是你只關心如何運行程序,從這兒開始吧~
獲取頭像圖片.exe
雙擊運行該文件,會彈出微信二維碼:
掃碼後會在當前文件夾生成你的微信頭像,同時新生成同名的文件夾,用來存放讀取到的好友頭像圖片,窗口會顯示好友數目和進度:
運行完畢,你的微信好友頭像圖片會被保存在與你暱稱同名的文件夾中。
單點4圖.exe
以前咱們是用4個頭像替換漢字點陣中的一個點,即單點4圖(是否是有點過於直白?),雙擊運行:
會首先要你輸入漢字,這裏咱們輸個雞湯:「種一棵樹最好的時間是十年前,其次是如今。」注意這裏要求是漢字和中文標點符號,英文和數字暫時不支持。輸入完成回車,會要你輸入素材圖片文件夾名稱:
咱們用以前生成的頭像圖片文件夾,因此這裏輸入TED,接下來就會生成一個以_out結尾的文件夾,隨着程序代碼的執行,最終生成的漢字圖片會一個個出現其中:
代碼運行完,全部的字會按順序命名排列在文件夾中:
打開其中任意一個字,每一個點是由四個頭像圖片組成的:
單點單圖.exe
顧名思義,即每一個點處用一張大些的頭像來代替,按上述流程運行單點單圖.exe,咱們拿最終生成的「年」字來看:
確實是單點單圖了,哈哈~
注意
以上即是基本操做了,記得再次生成新的效果圖以前,要將已生成圖片備份,不然會被覆蓋。
同時,微信好友頭像圖片文件夾生成一次就足夠,反覆運行也只是重複下載好友圖片。
以及,若是你想用其餘圖片來組字,徹底能夠將圖片文件夾複製過來,直接運行單點4圖.exe或者單點單圖.exe進行組字。
效果圖
能夠輸入九個字,將生成的效果圖組成九宮格,例如:
以及剛提到的用照片或圖片組字,以小豬佩奇作個展現吧~
回顧
以上即是我設想中的圖片組字了,固然還能夠繼續優化:好比加強字庫,用其餘字體來展示;再好比豐富輸入內容,容許字母數字;還有背景的設置與優化等,這些留做之後調整。
掌握了代碼向exe的轉換,意味着代碼實用性的提高,能夠經過運行exe來自動實現系列繁瑣任務,這也是以後我會着重挖掘的點。
程序下載
欲直接下載代碼文件,關注咱們的公衆號哦!查看歷史消息便可!