某天发现生成二维码的工具(zxing)运行的很慢,于是乎上网上寻找生成二维码的工具,发现常见的开源工具有如下三种:
选哪个好呢?那就自己手动比较一下吧。
首先就遇到一个大坑,为啥人家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. 边框设置
该问题比较复杂,表格可以列很多,此处就概述下
5. 抉择
已经对比完成了,大伙觉得选哪个呢?如果非要选一个我更倾向于选Zxing。不过我更想告诉大家的是,谁也不选,而是做一个代理模式,对外暴漏的是自己的接口,底层你管我用的是谁呢,说不定明天我就换了一个更美更好的接口呢。
6. 我要带logo
二维码必须带logo,所以我从"诸葛风流"那偷来了源码,会放到附件上。附件中已经是做好了代理模式的源码,如果有用请点赞,用好请留言。
源码下载:http://xiazai.jb51.net/201701/yuanma/QRCreater_jb51.rar
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持站长技术!
一、正则表达式概述 二、正则表达式在VBScript中的应用 三、正则表达式在VavaScr...
计算属性computed: 支持缓存,只有依赖数据发生改变,才会重新进行计算 不支持...
本文将研究 ES6 的 for ... of 循环。 旧方法 在过去,有两种方法可以遍历 javas...
ADO对象: Connection Command Recordset Record Stream ASP支持的对象很多,可...
【排序算法】之lowb三人组冒泡、插入、选择 什么是lowb三人组 冒泡排序bubble so...
vbs:把一段文字中指定字符颜色变成红色的正则 functionc(Tstr,Word) Dimre Setre...
一石激起千层浪,继中国区浩浩荡荡的大裁员告一段落之后,甲骨文并未因此收起手...
前言 相信大家都知道在IDE中代码的智能提示几乎都是标配,虽然一些文本编辑器也...
歌词编辑器 歌词编辑器 第一步:选择要播放的歌曲并播放 第二步:填写全部的歌词...
微信文件传输助手是微信电脑版与手机微信之间相互传输图片等文件的好工具,但很...