發(fā)布于:2021-01-14 15:38:09
0
2788
0
不是每個人都喜歡二維碼,但我很喜歡。如果我以后看到想要記住的東西或要查看的東西,尤其是在路上,拍一張快速照片非常容易——這比試圖記住一個URL要容易得多,也比在一個小鍵盤上鍵入要快得多。
如果你需要為客戶或你自己生成二維碼,有一個非常好的JavaScript項目:node-qrcode。讓我們看看你可以用不同的方式和輸出格式來創(chuàng)建一個QR碼!
開始安裝庫:
yarn add qrcode
創(chuàng)建二維碼圖像數(shù)據(jù)
隨著QR碼實用程序可用,您可以生成一個數(shù)據(jù)URI的QR碼,您可以使用<img>元素:
const generateQR = async text => { try { console.log(await QRCode.toDataURL(text)) } catch (err) { console.error(err) } } generateQR("https://davidwalsh.name"); /* data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIQAAACECAYAAABRRIOnAAAAAklEQVR4AewaftIAAAOMSURBVO3BQY7kRgADwWSh ///l9B584EmAIPV41mBE/IOZfx1mymGmHGbKYaYcZsphphxmymGmHGbKYaYcZsphphxmymGmHGbKh4eS8JNUWhKayh1JaCotCU3ljiT8JJUnDjP lMFMOM+XDy1TelIQ7ktBUrqi0JNyRhKZyReVNSXjTYaYcZsphpnz4siTcofKbqHxTEu5Q+abDTDnMlMNM+fCXU2lJaEloKnckoak0lf+Tw0w5z JTDTPnwl0vCFZWWhKbyRBKayt/sMFMOM+UwUz58mco3qVxJQlP5TVR+k8NMOcyUw0z58LIk/KQkNJU7ktBUWhLelITf7DBTDjPlMFM+PKTyX1 JpSWgqdyThTSp/k8NMOcyUw0z58FASmsqVJPykJDSVKyotCXckoalcSUJTaUm4Q+WJw0w5zJTDTIl/8EVJuKLSktBUnkhCU2lJeELljiS8SeV Nh5lymCmHmRL/4Acl4YpKS0JTuSMJTeVKEppKS8ITKi0JV1SuJKGpPHGYKYeZcpgp8Q9elIQrKi0JV1RaEppKS0JT+aYkNJWWhCsqLQlPqDxxm CmHmXKYKR8eSkJTuUOlJaEl4Q6VloSm0pLQVK4k4ZtU7kjCmw4z5TBTDjMl/sEDSXhC5Y4kXFFpSWgqV5LwJpUrSWgqV5LQVN50mCmHmXKYKR+ +TOWOJHxTEu5QaUloKi0JLQlN5UoS7khCU3niMFMOM+UwUz68TKUloam0JDSVK0m4Q6Uloam8SeVKEppKS8IVlZaENx1mymGmHGZK/IMHktBUW hKuqFxJwhMqdyShqbQkfJNKS8IVlTcdZsphphxmyoeHVK6oPKFyJQlN5UoSvknljiT8JoeZcpgph5ny4aEk/CSVK0m4Q6Ul4YpKS8KVJDSVO1 SuJKGpPHGYKYeZcpgpH16m8qYkvEmlJeGOJNyh8qYkNJU3HWbKYaYcZsqHL0vCHSpPqLQk3KHSknBHEn5SEprKE4eZcpgph5ny4X9O5YrKHSot CXeo/GaHmXKYKYeZ8uEvp9KS0FSuJKGpNJUrKi0JTeVKEn6Tw0w5zJTDTPnwZSr/pSQ0laZyJQlN5YkkXFFpSfhJh5lymCmHmfLhZUn4SUm4on IlCU8koam0JDSVK0loKleS8KbDTDnMlMNMiX8w86/DTDnMlMNMOcyUw0w5zJTDTDnMlMNMOcyUw0w5zJTDTDnMlMNM+Qeve5EOUrEhtwAAAABJR U5ErkJggg== */
在終端中創(chuàng)建一個二維碼
如果你想通過Node看到終端上的二維碼。你可以通過傳遞一個config對象來實現(xiàn):
const generateQR = async text => { try { console.log(await QRCode.toString(text, {type: 'terminal'})) } catch (err) { console.error(err) } }
創(chuàng)建一個二維碼圖像
你可以生成一個PNG, SVG,或UTF8圖像的二維碼:
const generateQR = async text => { try { await QRCode.toFile('./davidwash-qr-code.png', text); } catch (err) { console.error(err) } }
在畫布上創(chuàng)建一個二維碼
如果你使用像Browserify和webpack這樣的工具,你可以在客戶端使用qrcode:
var canvas = document.getElementById('canvas'); const generateQR = async text => { try { await QRCode.toCanvas(canvas, text) } catch (err) { console.error(err) } } generateQR("https://davidwalsh.name");
這個很棒的二維碼庫還允許你創(chuàng)建比我在這里展示的更多的東西,包括二進(jìn)制數(shù)據(jù)和各種選項。如果你需要創(chuàng)建一個QR碼,看看node-qr碼就知道了!