34 lines
976 B
JavaScript
34 lines
976 B
JavaScript
// 简化版二维码生成器
|
|
// 实际项目中建议使用成熟的小程序二维码库如 weapp-qrcode
|
|
|
|
function QRCode(canvasId, options) {
|
|
const text = options.text || ''
|
|
const width = options.width || 200
|
|
const height = options.height || 200
|
|
|
|
// 这里使用微信的canvas画一个占位图
|
|
// 实际项目需要引入完整的二维码生成库
|
|
const ctx = wx.createCanvasContext(canvasId)
|
|
|
|
// 画背景
|
|
ctx.setFillStyle(options.colorLight || '#ffffff')
|
|
ctx.fillRect(0, 0, width, height)
|
|
|
|
// 画边框
|
|
ctx.setStrokeStyle(options.colorDark || '#000000')
|
|
ctx.setLineWidth(2)
|
|
ctx.strokeRect(10, 10, width - 20, height - 20)
|
|
|
|
// 画文字提示
|
|
ctx.setFillStyle(options.colorDark || '#000000')
|
|
ctx.setFontSize(14)
|
|
ctx.setTextAlign('center')
|
|
ctx.fillText('二维码', width / 2, height / 2 - 10)
|
|
ctx.setFontSize(12)
|
|
ctx.fillText(text.substring(0, 16), width / 2, height / 2 + 10)
|
|
|
|
ctx.draw()
|
|
}
|
|
|
|
module.exports = QRCode
|