Kódolási módok

Más néven: adatmódok, numerikus mód, alfanumerikus mód, bájtmód, kandzsimód, encoding modes

Meghatározás

A kódolási módok azok a módszerek, ahogyan a QR-kód a karaktereket bitekbe csomagolja. A négy fő mód a numerikus, az alfanumerikus, a bájt és a kandzsi, és egyetlen kód válthat közöttük.

A négy fő mód

Minden mód a karaktertartományt cseréli sűrűségre. A numerikus mód csak számjegyeket kezel, de hármat csomagol 10 bitbe, a bájtmód bármilyen bájtot kezel, de mindegyikre 8 bitet fordít.

Az alfanumerikus mód 45 karakteres készletet fed le: a 0–9 számjegyeket, az A–Z nagybetűket, a szóközt és a $ % * + - . / szimbólumokat, valamint a kettőspontot. A kisbetűk nincsenek a készletben, ezért egy csupa nagybetűs URL kisebb kódot adhat, mint ugyanaz az URL kisbetűkkel.

  • Numerikus: 0–9 számjegyek, 3 számjegyenként 10 bit
  • Alfanumerikus: 45 karakter, 2 karakterenként 11 bit
  • Bájt: bármilyen 8 bites érték, bájtonként 8 bit
  • Kandzsi: Shift JIS kétbájtos karakterek, egyenként 13 bit

Módjelzők és szegmensek

Az adatok minden szakasza 4 bites módjelzővel és karakterszámmal kezdődik, amelynek hossza a módtól és a verziótól függ. A kód több ilyen szegmenst is tartalmazhat, például numerikusat egy hosszú számjegysorhoz és bájtot a többihez, ami kisebbé teheti az eredményt.

Más 4 bites jelzők nem karakterkészletet, hanem szolgáltatásokat jeleznek: az ECI a karakterkódolás megadására, a strukturált hozzáfűzés az adatok több kód közötti felosztására, az FNC1 pedig a GS1 és más ipari adatformátumokra. Négy nullbites lezáró fejezi be az adatot.

  • Numerikus 0001, alfanumerikus 0010, bájt 0100, kandzsi 1000
  • ECI 0111, strukturált hozzáfűzés 0011
  • FNC1 első pozíció 0101, második pozíció 1001
  • Lezáró 0000

Bájtmód és karakterkészletek

A szabvány alapértelmezett értelmezése a bájtmódra az ISO-8859-1 (Latin-1), de a legtöbb generátor ma UTF-8-at ír, hogy az ékezetes betűk, más írásrendszerek és az emoji is megmaradjanak. Az olvasók általában a bájtok vizsgálatával ismerik fel az UTF-8-at.

Ahol a karakterkészletnek egyértelműnek kell lennie, egy ECI-fejléc kifejezetten megadhatja. Enélkül az olvasó olykor rosszul tippelhet, és torz karaktereket jeleníthet meg.

Gyakran ismételt kérdések

Miért nagyobb a QR-kódom kisbetűkkel?

A kisbetűk nincsenek az alfanumerikus készletben, ezért a szövegnek bájtmódot kell használnia karakterenként 8 biten az 5,5 helyett. A nagybetűk, számjegyek és néhány szimbólum tömörebben csomagolódik.

Tárolhat a QR-kód emojit vagy nem latin szöveget?

Igen, bájtmódban UTF-8-cal, amelyet a legtöbb generátor és telefonos olvasó támogat. Minden ilyen karakter több bájtot foglal, ezért a kapacitás csökken.

Keverhet egy QR-kód numerikus és szöveges adatot?

Igen. Az adat szegmensekre osztható, mindegyik saját móddal, és a jó kódolók azt a felosztást választják, amely a legkisebb kódot adja.

Források és szabványok

Minden fogalom