您好,登錄后才能下訂單哦!
這篇文章主要介紹二維碼的開源工具有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
某天發現生成二維碼的工具(zxing)運行的很慢,于是乎上網上尋找生成二維碼的工具,發現常見的開源工具有如下三種:
Zxing(zxing.dll)
ThoughtWorks(ThoughtWorks.QRCode.dll)
QrCodeNet(Gma.QrCodeNet.Encoding.dll)
選哪個好呢?那就自己手動比較一下吧。
首先就遇到一個大坑,為啥人家zxing的使用方式和自己的使用的不一樣,后來才發現zxing.dll其實有倆版,一個416kb,一個200多kb。我們原來用的是200多kb的,效率比較慢,那就用416kb的比較吧
(zxing有倆版,都叫zxing.dll,都是生成二維碼的,可能作者還是一個人,但是使用方式和效率差距太大了,請認準416kb版本)
1. 對被編碼的內容長度的支持,如下表所示:
可以看出ThoughtWorks對于編碼內容有長度限制(可以通過設置調整,但是還是很容易超長),基本已經被踢出局。)
2. 三種工具的執行效率
其中:twqr指ThoughtWorks,netqr指QrCodeNet。可以看出已經out出局的ThoughtWorks執行效率最快,而Zxing是QrCodeNet的2倍,但是時間都不是很長。而除了ThoughtWorks外另外倆個都會隨被編碼內容變長而增長。
3. 生成文件大小的比較:
文件大小QrCodeNet更小些,QrCodeNet甚至可以根據內容大小調整尺寸。而Zxing最大,不過Zxing的尺寸也是大于其他倆個的。
(zxing是設置象素大小,所以此處用于50x數值,因為只有100的倍數才能保證邊框的設置和實際生成的邊框大小相符;而ThoughtWorks和QrCodeNet設置數值,實際尺寸約是33x數值,和邊框值有關)
4. 邊框設置
該問題比較復雜,表格可以列很多,此處就概述下
ThoughtWorks默認不支持邊框,所以他設置尺寸是:33x數值+1
QrCodeNet支持無邊框,細邊框,粗邊框三種,所以設置的尺寸為:29x數值、33x數值、37x數值
Zxing尺寸和邊框可以任意設置,所以zxing優先保證尺寸,至于邊框是在滿足尺寸之后才會考慮邊框的大小,根據經驗尺寸是100的倍數時邊框支持的最好。
5. 抉擇
已經對比完成了,大伙覺得選哪個呢?如果非要選一個我更傾向于選Zxing。不過我更想告訴大家的是,誰也不選,而是做一個代理模式,對外暴漏的是自己的接口,底層你管我用的是誰呢,說不定明天我就換了一個更美更好的接口呢。
6. 我要帶logo
二維碼必須帶logo,所以我從"諸葛風流"那偷來了源碼,會放到附件上。附件中已經是做好了代理模式的源碼,如果有用請點贊,用好請留言。
以上是二維碼的開源工具有哪些的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。