世界上25%的人都有拖延症——但我覺得這統計肯定少了,至少我就是一名拖延症患者。一直想把“Java生成名片式(帶有背景圖片、用戶網絡頭像、用戶暱稱)的二維碼”這篇博客分享出來,但一直拖啊拖,拖到現在,真應了蘇格蘭的那句諺語——“什麼時候都能做的事,往往什麼時候都不會去做。”
一、源碼下載
可以通過GitHub直接下載https://github.com/qinggee/qrcode-utils.
分享之前先推薦下我自己建的Java學習群:548511899,如果你正在學習Java,小編推薦你加入,大家都是同道中人,不定期分享乾貨(只有Java相關的),包括我自己整理的一份2017最新的Java資料和零基礎入門教程,歡迎初學和進階中的小夥伴
使用接口
文件位置: /qrcode-utils/src/test/QrcodeUtilsTest.java
如果你從GitHub上下載到源碼後,可直接通過eclipse把工程導入到你的工作庫,運行/qrcode-utils/src/test/QrcodeUtilsTest.java 即可生成二維碼。
2.2 目錄文件介紹
核心類為QrcodeUtils.java(用來生成二維碼)
名片式二維碼的參數類MatrixToBgImageConfig.java
測試用例QrcodeUtilsTest.java
res資源包下有兩張圖片,bg.jpg為指定的背景圖、default_headimg.jpg為默認的頭像圖
/qrcode-utils/lib為所需的jar包
2.3 QrcodeUtils.java
2.3.1 獲取背景
2.3.2 獲取微信頭像
通過建立HttpGet請求來獲取微信頭像。
通過createTmpFile方法將圖像下載到本地。
2.3.3 在背景圖上繪製二維碼、頭像、暱稱
好了,源碼就先介紹到這嘍。
你肯定在網絡上見到過不少Java生成帶有logo的二維碼的源碼,這些都是生成二維碼的初級應用。
這篇文章的原理就是在一張指定的圖片對象Graphics2D利用drawImage()方法繪製上層圖像,利用drawString繪製文字。