Režimy kódovania

Nazýva sa aj: dátové režimy, numerický režim, alfanumerický režim, bajtový režim, režim kandži

Definícia

Režimy kódovania sú spôsoby, ako QR kód ukladá znaky do bitov. Štyri hlavné režimy sú numerický, alfanumerický, bajtový a kandži a jeden kód môže medzi nimi prepínať.

Skontroloval tím AriaQR ·

Režimy kódovania

Štyri hlavné režimy

Každý režim vymieňa rozsah znakov za hustotu. Numerický režim zvláda len číslice, ale uloží tri z nich do 10 bitov, zatiaľ čo bajtový režim zvláda ľubovoľný bajt, ale na každý minie 8 bitov.

Alfanumerický režim pokrýva sadu 45 znakov: číslice 0 – 9, veľké písmená A – Z, medzeru a symboly $ % * + - . / a dvojbodku. Malé písmená v sade nie sú, a preto môže mať adresa URL úplne veľkými písmenami menší kód než tá istá adresa malými.

Režimy kódovania (2)
  • Numerický: číslice 0 – 9, 10 bitov na 3 číslice
  • Alfanumerický: 45 znakov, 11 bitov na 2 znaky
  • Bajtový: ľubovoľná 8-bitová hodnota, 8 bitov na bajt
  • Kandži: dvojbajtové znaky Shift JIS, 13 bitov každý

Indikátory režimu a segmenty

Každý úsek údajov sa začína 4-bitovým indikátorom režimu a počtom znakov, ktorého dĺžka závisí od režimu a verzie. Kód môže obsahovať niekoľko takýchto segmentov, napríklad numerický pre dlhý rad číslic a bajtový pre zvyšok, čo môže výsledok zmenšiť.

Iné 4-bitové indikátory signalizujú funkcie, nie znakové sady: ECI na deklarovanie kódovania znakov, structured append na rozdelenie údajov medzi viac kódov a FNC1 pre GS1 a iné priemyselné dátové formáty. Ukončovač zo štyroch nulových bitov údaje ukončí.

  • Numerický 0001, alfanumerický 0010, bajtový 0100, kandži 1000
  • ECI 0111, structured append 0011
  • FNC1 prvá pozícia 0101, druhá pozícia 1001
  • Ukončovač 0000

Bajtový režim a znakové sady

Predvolený výklad bajtového režimu podľa normy je ISO-8859-1 (Latin-1), ale väčšina dnešných generátorov zapisuje UTF-8, aby prežili písmená s diakritikou, iné písma a emoji. Čítačky zvyčajne zistia UTF-8 kontrolou bajtov.

Tam, kde musí byť znaková sada jednoznačná, ju môže výslovne deklarovať hlavička ECI. Bez nej môže čítačka občas hádať nesprávne a zobraziť skomolené znaky.

Často kladené otázky

Prečo je môj QR kód väčší s malými písmenami?

Malé písmená nie sú v alfanumerickej sade, takže text musí použiť bajtový režim s 8 bitmi na znak namiesto 5,5. Veľké písmená, číslice a niekoľko symbolov sa ukladajú tesnejšie.

Môže QR kód uložiť emoji alebo text v inom ako latinskom písme?

Áno, v bajtovom režime pomocou UTF-8, ktoré podporuje väčšina generátorov a čítačiek v telefónoch. Každý takýto znak zaberie niekoľko bajtov, takže kapacita klesá.

Môže jeden QR kód miešať číselné údaje a text?

Áno. Údaje sa dajú rozdeliť na segmenty, každý s vlastným režimom, a dobré kodéry zvolia rozdelenie, ktoré dá najmenší kód.

Zdroje a normy

Všetky pojmy