QR Code Generator
Supports QR versions 1-6, byte or alphanumeric encoding (auto-detected — digits/uppercase letters/space and $%*+-./: use the more compact alphanumeric mode), and all four error-correction levels (L/M/Q/H). One scoped-down exception: levels Q and H skip version 5 specifically — its spec-defined layout splits into unevenly-sized sub-blocks, and hand-transcribing that from memory carries the same risk we declined to take with the Barcode Generator's Code128 support, so a Q/H code that would otherwise need version 5 is bumped straight to version 6 instead. For the same reason we haven't extended past version 6: versions 7+ need a second, per-version alignment-pattern coordinate table plus extra version-info bits, and a subtle error there wouldn't be caught by static review — only by a scan failing in the field. The mask pattern is fixed (still fully spec-valid and scannable, just not penalty-optimized for visual regularity).