Os códigos QR não são do agrado de todos, mas eu gosto muito deles. Se vejo algo que quero lembrar ou verificar mais tarde, especialmente quando estou na estrada, é muito fácil tirar uma foto rápida – é muito mais fácil do que tentar lembrar um URL e muito mais rápido do que digitá-lo em um teclado minúsculo.
Se o senhor precisar gerar códigos QR, para um cliente ou para si mesmo, há um projeto JavaScript muito bom: node-qrcode. Vamos dar uma olhada nas diferentes formas e formatos de saída que o senhor pode usar para criar um código QR!
Comece instalando a biblioteca:
yarn add qrcode
Criar dados de imagem de código QR
Com o utilitário de código QR disponível, o senhor pode gerar um URI de dados para o código QR que pode ser usado com um <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/IOZfx1mymGmHGbKYaYcZsphphxmymGmHGbKYaYcZsphphxmymGmHGbKh4eS8JNUWhKayh1JaCotCU3ljiT8JJUnDjPlMFMOM+XDy1TelIQ7ktBUrqi0JNyRhKZyReVNSXjTYaYcZsphpnz4siTcofKbqHxTEu5Q+abDTDnMlMNM+fCXU2lJaEloKnckoak0lf+Tw0w5zJTDTPnwl0vCFZWWhKbyRBKayt/sMFMOM+UwUz58mco3qVxJQlP5TVR+k8NMOcyUw0z58LIk/KQkNJU7ktBUWhLelITf7DBTDjPlMFM+PKTyX1JpSWgqdyThTSp/k8NMOcyUw0z58FASmsqVJPykJDSVKyotCXckoalcSUJTaUm4Q+WJw0w5zJTDTIl/8EVJuKLSktBUnkhCU2lJeELljiS8SeVNh5lymCmHmRL/4Acl4YpKS0JTuSMJTeVKEppKS8ITKi0JV1SuJKGpPHGYKYeZcpgp8Q9elIQrKi0JV1RaEppKS0JT+aYkNJWWhCsqLQlPqDxxmCmHmXKYKR8eSkJTuUOlJaEl4Q6VloSm0pLQVK4k4ZtU7kjCmw4z5TBTDjMl/sEDSXhC5Y4kXFFpSWgqV5LwJpUrSWgqV5LQVN50mCmHmXKYKR++TOWOJHxTEu5QaUloKi0JLQlN5UoS7khCU3niMFMOM+UwUz68TKUloam0JDSVK0m4Q6Uloam8SeVKEppKS8IVlZaENx1mymGmHGZK/IMHktBUWhKuqFxJwhMqdyShqbQkfJNKS8IVlTcdZsphphxmyoeHVK6oPKFyJQlN5UoSvknljiT8JoeZcpgph5ny4aEk/CSVK0m4Q6Ul4YpKS8KVJDSVO1SuJKGpPHGYKYeZcpgpH16m8qYkvEmlJeGOJNyh8qYkNJU3HWbKYaYcZsqHL0vCHSpPqLQk3KHSknBHEn5SEprKE4eZcpgph5ny4X9O5YrKHSotCXeo/GaHmXKYKYeZ8uEvp9KS0FSuJKGpNJUrKi0JTeVKEn6Tw0w5zJTDTPnwZSr/pSQ0laZyJQlN5YkkXFFpSfhJh5lymCmHmfLhZUn4SUm4onIlCU8koam0JDSVK0loKleS8KbDTDnMlMNMiX8w86/DTDnMlMNMOcyUw0w5zJTDTDnMlMNMOcyUw0w5zJTDTDnMlMNM+Qeve5EOUrEhtwAAAABJRU5ErkJggg== */
Criar um código QR no Terminal
Se quiser ver o código QR no terminal via Node.js, o senhor pode fazer isso passando um objeto de configuração:
const generateQR = async text => { try { console.log(await QRCode.toString(text, {type: 'terminal'})) } catch (err) { console.error(err) } }

Criar uma imagem de código QR
O senhor pode gerar uma imagem PNG, SVG ou UTF8 para o código QR:
const generateQR = async text => { try { await QRCode.toFile('./davidwash-qr-code.png', text); } catch (err) { console.error(err) } }
Criar um código QR no Canvas
Se você usar um utilitário como o Browserify e o webpack, poderá usar o qrcode
no lado do cliente:
var canvas = document.getElementById('canvas'); const generateQR = async text => { try { await QRCode.toCanvas(canvas, text) } catch (err) { console.error(err) } } generateQR("https://davidwalsh.name");
Essa incrível biblioteca de código QR também permite que o senhor crie muito mais do que mostrei aqui, inclusive dados binários e com uma variedade de opções. Se o senhor precisar criar um código QR, não precisa procurar mais node-qr código!