Režimi kodiranja

Poznato i kao: režimi podataka, numerički režim, alfanumerički režim, bajtni režim, kanji režim

Definicija

Režimi kodiranja su načini na koje QR kod pakuje znakove u bitove. Četiri glavna režima su numerički, alfanumerički, bajtni i kanji, a jedan kod može da prelazi između njih.

Pregledao AriaQR tim ·

Režimi kodiranja

Četiri glavna režima

Svaki režim menja raspon znakova za gustinu. Numerički režim obrađuje samo cifre, ali pakuje po tri u 10 bitova, dok bajtni režim obrađuje bilo koji bajt, ali troši 8 bitova na svaki.

Alfanumerički režim pokriva skup od 45 znakova: cifre 0–9, velika slova A–Z, razmak i simbole $ % * + - . / i dvotačku. Mala slova nisu u skupu, zbog čega URL napisan samo velikim slovima može dati manji kod od istog URL-a pisanog malim slovima.

Režimi kodiranja (2)
  • Numerički: cifre 0–9, 10 bitova na 3 cifre
  • Alfanumerički: 45 znakova, 11 bitova na 2 znaka
  • Bajtni: bilo koja 8-bitna vrednost, 8 bitova po bajtu
  • Kanji: Shift JIS dvobajtni znakovi, 13 bitova po znaku

Indikatori režima i segmenti

Svaki niz podataka počinje 4-bitnim indikatorom režima i brojem znakova, čija dužina zavisi od režima i verzije. Kod može sadržati nekoliko takvih segmenata, na primer numerički za dugačak niz cifara i bajtni za ostalo, što može dati manji rezultat.

Drugi 4-bitni indikatori signaliziraju funkcije, a ne skupove znakova: ECI za deklarisanje kodiranja znakova, structured append za deljenje podataka na više kodova i FNC1 za GS1 i druge industrijske formate podataka. Završnik od četiri nulta bita završava podatke.

  • Numerički 0001, alfanumerički 0010, bajtni 0100, kanji 1000
  • ECI 0111, structured append 0011
  • FNC1 prva pozicija 0101, druga pozicija 1001
  • Završnik 0000

Bajtni režim i skupovi znakova

Podrazumevano tumačenje bajtnog režima u standardu je ISO-8859-1 (Latin-1), ali većina današnjih generatora upisuje UTF-8 da bi slova sa dijakriticima, druga pisma i emodžiji preživeli. Čitači obično prepoznaju UTF-8 pregledom bajtova.

Tamo gde skup znakova mora biti nedvosmislen, ECI zaglavlje ga može izričito deklarisati. Bez njega čitač povremeno može pogrešno da pretpostavi i prikaže izobličene znakove.

Česta pitanja

Zašto je moj QR kod veći sa malim slovima?

Mala slova nisu u alfanumeričkom skupu, pa tekst mora da koristi bajtni režim sa 8 bitova po znaku umesto 5,5. Velika slova, cifre i nekoliko simbola pakuju se gušće.

Može li QR kod da sadrži emodži ili tekst koji nije latinica?

Da, u bajtnom režimu pomoću UTF-8, što podržava većina generatora i telefonskih čitača. Svaki takav znak zauzima nekoliko bajtova, pa kapacitet opada.

Može li jedan QR kod da meša numeričke podatke i tekst?

Da. Podaci se mogu podeliti na segmente, svaki sa sopstvenim režimom, a dobri koderi biraju podelu koja daje najmanji kod.

Izvori i standardi

Svi pojmovi