generate qrcode image filled with logo
基于node-gd图形处理库,用于生成带logo的二维码图片。
npm install qrcode-logo --save
qrcode-logo依赖于node-gd, 若无法正常安装node-gd,请参考node-gd安装文档: https://www.npmjs.com/package/node-gd
var fs = require('fs'),
qrCodeLogo = require('qrcode-logo'),
url = 'https://www.baidu.com/',
qrcodeImgFilePath = '/Users/test/myworkspace/qr_logo.png',
logoBuffer = fs.readFileSync('/Users/test/myworkspace/logo.png', {
encoding: null
});
qrCodeLogo(url, qrcodeImgFilePath, {
size: 10, // 二维码单位块大小
logo: logoBuffer // logo数据
});
var fs = require('fs'),
qrCodeLogo = require('qrcode-logo'),
url = 'https://www.baidu.com/',
qrcodeImgFilePath = '/Users/test/myworkspace/qr.png';
qrCodeLogo(url, qrcodeImgFilePath, function (err, img) {
console.log(err, img); // img为生成二维码图片信息(包含高度、宽度等信息)
});
var fs = require('fs'),
qrCodeLogo = require('qrcode-logo'),
url = 'https://www.baidu.com/',
qrcodeImgFilePath = '/Users/test/myworkspace/qr_logo.png',
logoBuffer = fs.readFileSync('/Users/test/myworkspace/logo.png', {
encoding: null
});
qrCodeLogo(url, qrcodeImgFilePath, {
size: 10, // 二维码单位块大小
margin: 2,
logo: logoBuffer, // logo数据
logoBorder: { // border边框配置
width: 4,
color: 0xcccfff
},
bottomText: { // 底部文本框配置
text: 'A12',
bgColor: 0xeeefff
}
});
qrcode(text, outpath, qrOpts, cb) 或 qrcode(text, outpath, cb)
(String)生成二维码的文本、url。
(String)生成的二维码图片的文件路径。
生成二维码图片文件回调方法: function (err, img) { // err 错误认息 // img 生成的二维码图片信息(高度、宽度、色值等) }
(Number)二维码图片中二维码每块大小,默认值为10(pixel)。(二维码版本区间为version1 ~ version40, 每个版本对应块数不同。该插件生成的二维码基本由41块组成,即整个二维码图片宽度为:41 * qrOpts.size + qrOpts.margin * 2 * qrOpts.size)
(Number) 二维码周边的留白的块数,默认4(注意,此处不是真实的像素大小)。
(Boolean)是否优化处理text为url的情况, 默认为true
(Buffer) logo图片的buffer数据(目前仅支持png、jpeg格式图片)。 logo图片会设置额外背景色为白色(若logo为透明背景,则背景色会改为白色)
(Number)边框大小(pixel)。值为空时,不作边框渲染。
(Number)logo圆角大小, 默认值为10(pixel)。
(Number)边框颜色,使用十六进制颜色值.默认值为0xffffff.
(Number)文本框高度。默认值45。
(String) 文本对齐方式。默认居中对齐。
(Number)文本字体大小。默认值25。
(Number) 文本旋转角度,默认0(0~360)。
(Number) 文本颜色,使用十六进制颜色值。默认值0x000000。
(Number) 文本框背景颜色,使用十六进制颜色值。默认值0xffffff。
(String) 文本字体文件路径。仅支持ttf字体文件。默认为楷体(gb-2312).