介绍
- Three_QR_Code.pdf
- RFC式的文档
- 二维码 编码原理简介
- 通俗易懂的编码细节介绍
- QR碼 - 维基百科,自由的百科全书
- QR Code Minimum Size 与 What Size Should A Printed QR Code Be?
- 关于可识别性的一些结论,该网站上有大量二维码研究相关的文章
二维码开发库
- libqrencode
- 基础的c语言二维码编码库,很多语言基于它开发扩展,不包含生成png图的功能,如需生成png可参考这里
- jquery-qrcode
- 使用javascript直接在客户端生成二维码,中文支持参见JS生成二维码,支持中文字符
- php's qrencode extension
- 使用nginx的扩展性能会更好一点,参考后面nginx的相关扩展.
- libdecodeqr
- 二维码解码库
二维码生成工具
- qr-code-creator
- linux下的GUI程序。
- qrcode-terminal
- linux终端下生成并展示二维码,是一个node.js模块,带命令行工具程序,方便使用,介绍文章:QR Code Terminal
- python-qrcode
- linux终端下生成并展示二维码,是一个python包,带命令行工具程序,方便使用。
nginx的相关扩展
基本的二维码
二维码个性化水印
nginx_http_image_filter加上 水印补丁 即可。
下面的是经过修改后的 nginx image filter
模块代码,加入居中的水印效果:
编译
--with-debug --with-http_image_filter_module --add-module=/home/tangxinfa/Opensource/nginx-1.2.7/../ngx_http_qrcode_module/ --add-module=/home/tangxinfa/Opensource/nginx-1.2.7/../ngx_devel_kit/ --add-module=/home/tangxinfa/Opensource/nginx-1.2.7/../set-misc-nginx-module/ --add-module=/home/tangxinfa/Opensource/nginx-1.2.7/../echo-nginx-module/
配置
location ~ /qr { qrcode_fg_color FF0000; qrcode_bg_color FFFFFF; qrcode_level 2; qrcode_hint 2; qrcode_size 120; qrcode_margin 2; qrcode_version 5; set_unescape_uri $txt $arg_txt; qrcode_txt $txt; qrcode_casesensitive 1; qrcode_gen; image_filter_watermark "/usr/share/pixmaps/gnome-word.png"; image_filter_watermark_transparency 95; #0-100 image_filter watermark; }
访问
http://localhost:8080/qr?txt=hello
- 显示效果:
二维码基础服务的一点思索
- 必须建立在cdn的基础上
- 用户只需按照约定将内容以及定制参数按照直观的方式编码成二维码图片链接即可
参考:https://developers.google.com/chart/infographics/docs/qr_codes