スキャン保証
読み取れないQRコードは、どれほど美しくても価値がありません。当社は読み取り可能性を「ベストエフォート」ではなく、必須要件として扱っています。
サーバー側で行っていること
エンジンが生成するすべてのQR(手動でもAIでも)は、ファイルがサーバーを離れる前に3つのチェックを通過します。
- ISO/IEC 18004への適合。 マトリクスのサイズ、アライメントパターン、タイミングパターン、クワイエットゾーンの幅、誤り訂正レベルが仕様どおりか検証します。
- モジュールのコントラスト比。 前景と背景のコントラストを知覚的に(CIE Lab)測定します。安全なしきい値を下回る場合は自動補正します。グラデーションのアンカーを置き直し、ファインダーの色を元に戻します。
- 合成スキャンテスト。 参照デコーダー(zbar)がレンダリング結果を読み取ります。デコードに失敗した場合や誤ったペイロードが返った場合、エンジンは設定を修正し(ECCレベルを上げる、モジュールのスケールを大きくする、ファインダーを元に戻す)、自動的に再レンダリングします。
自動修正で合格状態にできない場合、APIは壊れたQRを返す代わりに、問題のあるフィールドを示す構造化エラーを返します。
AIエディタでの表示
「strictScannability」トグル(デフォルトでオン)は、両者が衝突したときに見た目よりも読み取り可能性を優先するようAIに指示します。オフにしてもエンジンは検証を行いますが、修正を強制する代わりに警告を表示します。
印刷したQRが読み取れなかった場合
印刷したサンプル(写真)と元のエクスポートを送ってください。理由を問わず、QRを無料で再生成します。連絡先は領収書に記載のメールアドレスです。
strictScannability: true と eccLevel: "H" で生成したQRで、読み取りに失敗した例はまだありません。もし起きた場合は、当社が責任を持ちます。
ECC Hが重要な理由
誤り訂正レベルHでは、QRが約30%損傷してもデコードできます。次の場合はデフォルトでHを使用します。
- ロゴや中央テキストを重ねたQR
- 非塗工紙や布など、経年劣化するものへの印刷
- 紫外線や雨にさらされる屋外看板
LとMは、媒体を自分で管理できるピクセル単位で正確な画面表示に向いています。エディタの手動モードで明示的に設定できます。