QRコードの画像ファイルを生成する方法を紹介します。
1. NPMパッケージ
Node Moduleの node-qrcode
を使用します。
https://www.npmjs.com/package/qrcode
インストールは
npm install --save qrcode
で完了です。
2. QRCodeGeneratorクラス
node-qrcode
自体は、誤り訂正レベルなど様々なオプションを設定できますが、今回は簡単に QRコードをPNGファイルに出力することに特化したクラスを作成してみました。
// QRCodeFileGen.ts
import * as QRCode from "qrcode";
interface _IQRCodeOption {
filename:string,
type:string,
}
export class QRCodeFileGenClass {
option: _IQRCodeOption;
toFile(filepath:string, filetype:string, value:any){
this.option = {
filename: filepath,
type: filetype
}
QRCode.toFile(this.option.filename, value, this.option);
}
}
toFile
関数には以下の引数を持ちます。
- filepath: 出力先のファイルパス。拡張子つき。
- filetype: 出力ファイルの拡張子。今回は
.png
を指定します。 - value: QRコードに記録する値です。文字列でも数字でもOKです。
3. QRCodeGeneratorクラスの使用方法
// index.ts
import {QRCodeFileGenClass} from "./QRCodeFileGen"
const _QRCodeFileGen = new QRCodeFileGenClass();
let filepath:string = __dirname + "/test.png"
let filetype:string = ".png"
let value:string = "testvalue"
_QRCodeFileGen.toFile(filepath, filetype, value);
import してインスタンスを生成して、toFile
関数を呼び出しているだけです。 出力先は__dirname
で、Javascriptが実行されるルートフォルダとしています。
QRCodeFileGen.ts のダウンロードはこちらから。
実践TypeScript【電子書籍】[ 吉井健文 ]
価格:3726円 (2019/7/23時点)
楽天で購入
](https://hb.afl.rakuten.co.jp/hgc/18648e8b.7d833591.18648e8c.ed1bab3c/?pc=https%3A%2F%2Fitem.rakuten.co.jp%2Frakutenkobo-ebooks%2F5456816fd8833397a6aa8b80647873ad%2F%3Fscid%3Daf_pc_bbtn&m=http%3A%2F%2Fm.rakuten.co.jp%2Frakutenkobo-ebooks%2Fi%2F18341447%2F%3Fscid%3Daf_pc_bbtn&link_type=picttext&ut=eyJwYWdlIjoiaXRlbSIsInR5cGUiOiJwaWN0dGV4dCIsInNpemUiOiIyNDB4MjQwIiwibmFtIjoxLCJuYW1wIjoicmlnaHQiLCJjb20iOjEsImNvbXAiOiJkb3duIiwicHJpY2UiOjEsImJvciI6MSwiY29sIjoxLCJiYnRuIjoxfQ==)
コメント