php用nodejs生成二维码
二维码在生活中无处不在,之前我也使用过java的zxing库生成过二维码,功能很强大。
效果展示
在线示例: http://www.lolmbbs.com/tool/qr
详细代码
生成二维码:
const qrCode = require('qrcode')
class QrController {
async create (ctx) {
const { text = 'Luban', options } = ctx.request.body
const qrOptions = {
type: 'image/png',
width: 180,
margin: 0,
scale: 1,
color: {
dark: '#000000',
light: '#ffffff'
},
errorCorrectionLevel: 'M',
quality: 1
}
Object.assign(qrOptions, options)
const imgData = await qrCode.toDataURL(text, qrOptions)
return ctx.success({ imgData })
}
}
module.exports = new QrController()
下载二维码:
const a = document.createElement('a')
const event = new MouseEvent('click')
a.download = '二维码'
a.href = this.imgSrc
a.dispatchEvent(event)
主要参数解释
-
type: 生成图片类型
主要包括image/png
、image/jpeg
、image/web
这三种类型.
ps: 但是我在代码中即使设置type为image/jpeg
,发现生成的图片还是png,后来仔细阅读文档才知道toDataURL这个方法只支持生成png类型的图片… -
width: 二维码的宽度
发现没有height字段设置,可能是生成的二维码都是正方形吧 -
margin: 内边距
内边距设置为10
内边距设置为0 -
scale 放缩的倍数
如果设置了width,优先生效width,则此参数无用.
放缩比例为5
放缩比例为10 -
color.light: 前景色
-
color.night: 背景色
默认的前景色是黑色,背景色为白色。 -
errorCorrectionLevel 纠错级别
二维码即使有部分显示不了,依然可以识别出二维码的内容,这就是二维码的纠错。
L级别的纠错代表只要残缺度小于7%,就可以被识别出,以此类推
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanfhgee
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01