rMQRコードの簡単な作り方

PythonでrMQR

PythonでrMQR code画像の作り方を調べてみました。Pythonライブラリを早速作って頂いた方に感謝!

ライブラリを使うだけで簡単にPythonでrMQR画像が作れるね!

rMQR コードとは

rectangle Micro QR code の略で、2022年5月にQRコードで知られるデンソーウェーブが新規開発した長方形QRコードのことです。

rMQRコード
ストーン
ストーン

そもそもQRコードってQuick Response(クイックレスポンス)コードって言うの知ってた?!

特徴

今までのQRコードは正方形でしたが、省スペースにQRコードを使用したいニーズに応えてrMQRコードが開発されました。ちょっとした余白に使いたい場合などに、細長い形(長方形)のQRコードがあったら便利じゃないですか?

rMQRコードはQRコードと比べるとデータ量は多少劣るものの、数字で361文字、アルファベットなら219文字(漢字も使える!もちろん色んな文字を混ぜても使える!)も格納出来るので十分ですね。

インストール

コマンドプロンプト上で

pip install rmqrcode

とするだけで準備完了です。

使い方 ーソースコード例ー

from rmqrcode import rMQR
import rmqrcode
from rmqrcode import QRImage

# pip install rmqrcode
# v0.3.1
# https://github.com/OUDON/rmqrcode-python#readme

# generate
data = "https://stone-program.com/"
qr = rMQR.fit(
    data,
    ecc=rmqrcode.ErrorCorrectionLevel.M,
    fit_strategy=rmqrcode.FitStrategy.BALANCED
)

# ecc : ErrorCorrectionLevel
    # ErrorCorrectionLevel.M: Approx. 15% Recovery Capacity.
    # ErrorCorrectionLevel.H: Approx. 30% Recovery Capacity.

# fit_strategy : specify how to determine size of rMQR Code.
    # FitStrategy.MINIMIZE_WIDTH: Try to minimize width.
    # FitStrategy.MINIMIZE_HEIGHT: Try to minimize height.
    # FitStrategy.BALANCED: Try to keep balance of width and height.

# Save as Image
image = QRImage(qr, module_size = 128)
image.show()
image.save("my_rMQR_Balanced.png")

fit_strategy オプション項目によって生成画像の幅を狭くするか、高さを抑えるか、バランス型にするか選べます。下の画像は当ブログURLを3つのオプションで生成比較した画像になります。

MINIMUM_WIDTHオプション画像
MINIMUM_HEIGHTオプション画像
BALANCEDオプション画像

ライブラリを作成してくれた作成者様に感謝!

最後に

ストーン
ストーン

rMQRコード画像の作成方法は分かったけど、読み取り方法はデンソーウェーブの方針で公開されてないらしい!比較的新しい2次元コードの為、読み取れる機器(スマホ含め)はまだ少ないようです。
作ったrMQR画像が読み取れるかの確認は出来ないね!…