Rumah >hujung hadapan web >tutorial js >Lihat cara menggunakan nodejs untuk menjana kod QR
Kod QR ada di mana-mana dalam kehidupan saya juga telah menggunakan pustaka zxing Java untuk menjana kod QR sebelum ini, yang sangat berkuasa.
Tetapi sebenarnya terdapat banyak perpustakaan pihak ketiga pada nodej yang boleh menjana kod QR. Hari ini kami menggunakan perpustakaan qrcode untuk menjana kod QR. [Cadangan tutorial berkaitan: tutorial video nodejs]
Contoh dalam talian: http://www.lolmbbs.com/tool/qr
Jana kod 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()
Muat turun kod QR:
const a = document.createElement('a') const event = new MouseEvent('click') a.download = '二维码' a.href = this.imgSrc a.dispatchEvent(event)
jenis: Jana jenis imej
terutamanya termasuk tiga jenis: image/png
, image/jpeg
, image/web
ps: Tetapi walaupun saya menetapkan taip dalam kod Untuk
, saya dapati imej yang dihasilkan masih png Selepas membaca dokumen dengan teliti, saya mendapati kaedah toDataURL hanya menyokong penjanaan imej jenis png...image/jpeg
lebar: Lebar kod QR Didapati tiada tetapan medan ketinggian, mungkin kod QR yang dijana semuanya segi empat sama
margin: Padding Padding ditetapkan kepada 10
Padding ditetapkan kepada 0
skala Zum berbilang Jika lebar ditetapkan, lebar berkuat kuasa dahulu, jadi parameter ini tidak berguna
Nisbah skala ialah 5
Nisbah penskalaan ialah 10<.>
warna latar depan
warna latar belakang Warna latar depan lalai ialah hitam dan warna latar belakang putih.
Tahap pembetulan ralat
Walaupun sebahagian daripada kod QR tidak dapat dipaparkan, kandungan kod QR masih boleh dikenali. Ini ialah pembetulan ralat kod QR. Pembetulan ralat peringkat L bermakna selagi kecacatan kurang daripada 7%, ia boleh dikenal pasti, dan seterusnya
Atas ialah kandungan terperinci Lihat cara menggunakan nodejs untuk menjana kod QR. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!