技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回はWEBデザインをテーマにしている第0ユニットです。
普段触ることないQRコード生成について触れる
機会があったので、そちらをご紹介したいと思います。
準備
今回はjavaで作っていきたいと思います。
私の開発環境はgradleを使っているので、
build.gradleファイルに以下追記してあげるだけで、必要なライブラリーが読み込まれます。
(便利な世の中になりましたね…)

参考サイト:Getting Started Developing · zxing/zxing Wiki · GitHub
使用しているライブラリーは、「ZXing」です。
Javaで実装されているオープンソースで、一次元コード(バーコードなど)、二次元コード(QRコードなど)の作成/読取を行うことができる画像処理ライブラリです。
作成
作成するにあたってポイントになるのが、「QRCodeWriter」の「encode」メソッドです。
コメントにざっくり書いてありますが、以下パラメータを指定することができます。
第一引数:表示する内容
第二引数:出力フォーマット指定(BarcodeFormat (ZXing 3.5.3 API))
第三引数:縦横のサイズ

生成したものをBitMatrix型の変数(bm)に格納し、writeToStreamメソッドで出力形式を指定すれば出力することができます。今回はQRコードをpng形式で出力してみました。
本実装はAPIリクエストを受け付けてそれに対応する出力結果を画面に返却していますが、
そこの部分は割愛します。
まとめ
今の時代は、一回だけお試しに作りたい時などの場合、わざわざプログラムを組まなくても
ネットで検索すれば多数の生成サイトが見つかります。
中にはデザインをいじれたり、用途に応じてフォーマットが用意されていたりと探してみると意外と面白いです。
というわけで、本投稿ではシンプルな部分だけではありますが、
QRコードを作成する仕組みをご紹介致しました。
少しでも興味を持っていただければ幸いです。
それでは、次回の技術者ブログをお楽しみに。
※QRコード内容は締めの挨拶です!
