如何使用Java程式語言產生QR Code?(Android 適用)


行動裝置的流行而跟著帶動起來的QR Code,是眾多條碼類型的其中一種,它讓我們的生活更便利,傳遞資訊的速度更快,省下許多使用鍵盤打字的時間。如果要產生出QR Code,已經有許多相關的現成工具能夠使用,甚至還能直接在網頁上產生。只是有的時候還是會遇到需要在自己的程式中加入產生QR Code的狀況,像是需要產生大量的QR Code時,或是想要讓自己的程式能不依賴其他工具就能獨立使用。這篇文章,將會探討如何使用Java程式語言產生QR Code。當然,因為是Java程式,因此在Android SDK上也是可以用的。

http://www.swetake.com/qrcode/

從以上連結可以直接取得用Java語言寫的QR Code Library,另外還有提供PHP以及Ruby的版本。這個Library用了許多檔案來存了不同大小以及不同容錯率的QR Core所使用的資料,算是有點小肥。在使用這個Java版本的Library的時候,會發現有許多不知道是在做什麼用的API,因此筆者另外寫了MagicQRCode函式庫來取代官方的,使用起來會簡單很多。MagicQRCode可以至GitHub取得:

https://github.com/magiclen/MagicQRCode

本站下載

MagicQRCode函式庫的使用方法十分簡單,只要兩行就可以產生出QR Code:

也可以多加一行setErrorCorrect方法,來設定QR Code的容錯率。愈高的容錯率資料量將愈大,但可以有效避免當條碼模糊不清,或是有部份受損時,造成無法辨識的情形。

qrData是一個二維的boolean陣列,陣列的大小會根據編碼的文字長度和容錯率而有所變動,但這個陣列一定是個方形陣列(長度相同)。如果要將qrData轉成我們平常看到由黑白兩色組成的圖片,可以參考以下程式碼,將其會製成圖形:

JavaFX繪製QR Code

如何使用Java程式語言產生QR Code?(Android 適用)

Android SDK繪製QR Code

關於作者

Magic Len

各位好,我是Magic Len,是這網站的管理員。我是台灣台中大肚山上人,畢業於台中高工資訊科和台灣科技大學資訊工程系,曾在桃機航警局服役。我熱愛自然也熱愛科學,喜歡和別人分享自己的知識與經驗。如果你有興趣認識我,可以加我的Facebook,並且請註明是從MagicLen來的。

相關文章