欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

生成二維碼的開(kāi)源工具對(duì)比(附源碼)

 更新時(shí)間:2017年01月04日 15:57:58   作者:[水&月]墳  
本文主要介紹了生成二維碼的開(kāi)源工具的對(duì)比,附源碼下載,具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧

某天發(fā)現(xiàn)生成二維碼的工具(zxing)運(yùn)行的很慢,于是乎上網(wǎng)上尋找生成二維碼的工具,發(fā)現(xiàn)常見(jiàn)的開(kāi)源工具有如下三種:

  1. Zxing(zxing.dll)
  2. ThoughtWorks(ThoughtWorks.QRCode.dll)
  3. QrCodeNet(Gma.QrCodeNet.Encoding.dll)

選哪個(gè)好呢?那就自己手動(dòng)比較一下吧。

首先就遇到一個(gè)大坑,為啥人家zxing的使用方式和自己的使用的不一樣,后來(lái)才發(fā)現(xiàn)zxing.dll其實(shí)有倆版,一個(gè)416kb,一個(gè)200多kb。我們?cè)瓉?lái)用的是200多kb的,效率比較慢,那就用416kb的比較吧

zxing有倆版,都叫zxing.dll,都是生成二維碼的,可能作者還是一個(gè)人,但是使用方式和效率差距太大了,請(qǐng)認(rèn)準(zhǔn)416kb版本

1. 對(duì)被編碼的內(nèi)容長(zhǎng)度的支持,如下表所示:

可以看出ThoughtWorks對(duì)于編碼內(nèi)容有長(zhǎng)度限制(可以通過(guò)設(shè)置調(diào)整,但是還是很容易超長(zhǎng)),基本已經(jīng)被踢出局。)

2. 三種工具的執(zhí)行效率

其中:twqr指ThoughtWorks,netqr指QrCodeNet??梢钥闯鲆呀?jīng)out出局的ThoughtWorks執(zhí)行效率最快,而Zxing是QrCodeNet的2倍,但是時(shí)間都不是很長(zhǎng)。而除了ThoughtWorks外另外倆個(gè)都會(huì)隨被編碼內(nèi)容變長(zhǎng)而增長(zhǎng)。

3. 生成文件大小的比較:

文件大小QrCodeNet更小些,QrCodeNet甚至可以根據(jù)內(nèi)容大小調(diào)整尺寸。而Zxing最大,不過(guò)Zxing的尺寸也是大于其他倆個(gè)的。

(zxing是設(shè)置象素大小,所以此處用于50x數(shù)值,因?yàn)橹挥?00的倍數(shù)才能保證邊框的設(shè)置和實(shí)際生成的邊框大小相符;而ThoughtWorks和QrCodeNet設(shè)置數(shù)值,實(shí)際尺寸約是33x數(shù)值,和邊框值有關(guān))

4. 邊框設(shè)置

該問(wèn)題比較復(fù)雜,表格可以列很多,此處就概述下

  • ThoughtWorks默認(rèn)不支持邊框,所以他設(shè)置尺寸是:33x數(shù)值+1
  • QrCodeNet支持無(wú)邊框,細(xì)邊框,粗邊框三種,所以設(shè)置的尺寸為:29x數(shù)值、33x數(shù)值、37x數(shù)值
  • Zxing尺寸和邊框可以任意設(shè)置,所以zxing優(yōu)先保證尺寸,至于邊框是在滿足尺寸之后才會(huì)考慮邊框的大小,根據(jù)經(jīng)驗(yàn)尺寸是100的倍數(shù)時(shí)邊框支持的最好

5. 抉擇

已經(jīng)對(duì)比完成了,大伙覺(jué)得選哪個(gè)呢?如果非要選一個(gè)我更傾向于選Zxing。不過(guò)我更想告訴大家的是,誰(shuí)也不選,而是做一個(gè)代理模式,對(duì)外暴漏的是自己的接口,底層你管我用的是誰(shuí)呢,說(shuō)不定明天我就換了一個(gè)更美更好的接口呢。

6. 我要帶logo

二維碼必須帶logo,所以我從"諸葛風(fēng)流"那偷來(lái)了源碼,會(huì)放到附件上。附件中已經(jīng)是做好了代理模式的源碼,如果有用請(qǐng)點(diǎn)贊,用好請(qǐng)留言。

源碼下載:http://xiazai.jb51.net/201701/yuanma/QRCreater_jb51.rar

以上就是本文的全部?jī)?nèi)容,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,同時(shí)也希望多多支持腳本之家!

相關(guān)文章

最新評(píng)論