QR コードはうざく思う人もいるのでしょうが、私は登場したときから頻繁に利用しています。特に、Wi-Fi のパスワードやショップの URL、メールアドレスは QR コード化した方がはるかに便利です。
メールアドレスや SNS アカウント登録を促す場合は QR コード化しないものを見せるか、したものを見せるかでは、返信率、登録率が全く違うように感じます。ユーザーにしてみれば、小さなキーボードでタイプするより、コードをカメラで撮影する方がお手軽です。それほど、スマホカメラが常用ツールになっているのだと理解しています。
クライアントまたは自分自身のために QR コードを生成する必要がある場合は、QR コード作成はスマホの無料アプリより、コンソールで素早く作る方が楽なこともあります。
QR コードのライブラリをインストールする
ライブラリをインストールすることから始めます。
優秀と評判の node-qrcode (JavaScript プロジェクト)を利用して、自分の環境を整えていきます。
地盤は Cygwin 環境でも何でも構いません。
操作は、すべてターミナル(コンソール)からやります。
Windows ユーザーは TeraTerm (公式サイト:https://teratermproject.github.io/) がおすすめです。
ディレクトリ
/home/temp
で実験することにします。
bash
ubu@ntu:~$ mkdir /home/temp
ubu@ntu:~$ cd /home/temp
ubu@ntu:~$ sudo npm install -g qrcode
ubu@ntu:~$ npm install --save qrcode
もしくは
bash
ubu@ntu:~$ mkdir /home/temp
ubu@ntu:~$ cd /home/temp
ubu@ntu:/home/temp$ sudo yarn add qrcode
ubu@ntu:/home/temp$ npm install --save qrcode
で、QR コード絡みのライブラリをインストールします。
早速 QR コードを作ってみる、スクリプト作成
次のようなスクリプトファイルをテスト的に作ります。
var QRCode = require('qrcode') const generateQR = async text => { try { console.log(await QRCode.toString(text, {type: 'terminal'})) } catch (err) { console.error(err) } } generateQR ( "https://ineters.com" );
このままテキストファイルで generateQR.js などとして保存します。
上の太字の部分が QR コード化されます。
早速 QR コードを作ってみる、出力してみる
基本はコンソールに出すようにします。
bash
ubu@ntu:~$ cd /home/temp
ubu@ntu:/home/temp$ node generateQR.js
出力は以下のような感じになります(TeraTerm を使った場合)。
イメージ画像として一発保存
var QRCode = require('qrcode') const generateQR = async text => { try { await QRCode.toFile('./ineters-qr-code.png', text); } catch (err) { console.error(err) } } generateQR ( "https://ineters.com" );
png ファイルとしてイメージ保存することもできます。
上のコードのように、太字部分を変えるだけです。スクリプトとしてファイル名は generateQRpng.js
として保存しました。
bash
ubu@ntu:~$ cd /home/temp
ubu@ntu:/home/temp$ node generateQRpng.js
後は応用して、もう少しスマートに中身を入力できるものに改良します(後ほど)。
JavaScript で常用対数を扱おうとしたときのメモ書きです。 普段の生活に対数がどれほど登場するか微妙ですが、化学 ... 続きを見る 長い長文をさっさと JavaScript で置換したいときに、私がままでダサいコードを書いていたので、昨年の小反省を込め ... 続きを見る
[JSの小ネタ]常用対数をどう扱う
[初級]JavaScript でかんたんに全置換する方法