Kody QR

Kod QR możesz utworzyć na bieżąco za pomocą żądania URL GET.

Przegląd

Kody QR to popularny rodzaj dwuwymiarowych kodów kreskowych. Są to tak zwane linki stałe lub hiperlinki świata fizycznego. Kody QR mogą zawierać do 4296 znaków alfanumerycznych dowolnego tekstu. Może to być dowolny tekst, np. adres URL, dane kontaktowe, numer telefonu, a nawet wiersz. Kody QR można odczytać za pomocą urządzeń optycznych przy użyciu odpowiedniego oprogramowania. Są to m.in. dedykowane czytniki kodów QR i telefony komórkowe.

Składnia

Główny adres URL: https://chart.googleapis.com/chart?

Żądania kodu QR obsługują następujące parametry zapytania w adresie URL po znaku ? w głównym adresie URL:

Parametr Wymagany czy opcjonalny Opis
cht=qr Wymagane Określa kod QR.
chs=<width>x<height> Wymagane Rozmiar obrazu.
chl=<data> Wymagane Dane do zakodowania. Dane mogą zawierać cyfry (0–9), znaki alfanumeryczne, binarne bajty danych lub znaki kanji. Nie można łączyć typów danych w kodzie QR. Dane muszą być zakodowane w adresie URL w formacie UTF-8. Pamiętaj, że adresy URL mają maksymalną długość 2 tys., więc jeśli chcesz zakodować więcej niż 2 tys. bajtów (z wyłączeniem pozostałych znaków adresu URL), musisz wysłać dane za pomocą metody POST.
choe=<output_encoding> Opcjonalnie Jak zakodować dane w kodzie QR. Oto dostępne wartości:
  • UTF-8 [wartość domyślna]
  • Shift_JIS
  • ISO-8859-1
chld=<error_correction_level>|<margin> Opcjonalnie
  • error_correction_level – kody QR obsługują 4 poziomy korekcji błędów, dzięki czemu umożliwiają przywrócenie brakujących, błędnie odczytanych lub zasłoniętych danych. Większa nadmiarowość zmniejsza się kosztem przechowywania mniejszej ilości danych. Szczegółowe informacje znajdziesz w dodatku. Oto obsługiwane wartości:
    • L – [wartość domyślna] umożliwia przywrócenie danych do 7%.
    • M – umożliwia przywrócenie utraty danych nawet o 15%
    • Q – umożliwia przywrócenie utraty danych nawet o 25%
    • H – umożliwia przywrócenie utraty danych nawet o 30%
  • margin – szerokość białego obramowania wokół fragmentu kodu, który zawiera dane. w wierszach, a nie w pikselach. Informacje o tym, które wiersze znajdują się w kodzie QR, znajdziesz poniżej. Wartością domyślną jest 4.

 

Przykład:

Kod QR
cht=qr
chl=Hello+world
choe=UTF-8

Szczegóły kodu QR [odczyt opcjonalny]

Poniżej znajdziesz więcej informacji o tym, jak działają kody QR. Nie musisz znać tych kodów, by móc je wygenerować.

Kody QR to kwadraty z równą liczbą wierszy i kolumn. Masz stały zestaw rozmiarów kodu QR: od 21 do 177 wierszy/kolumn (zwiększa się w krokach co 4). Każda konfiguracja jest nazywana wersją. Im więcej wierszy lub kolumn, tym więcej danych może przechowywać kod. Oto podsumowanie tych wersji:

  • Wersja 1 ma 21 wierszy i 21 kolumn i może zakodować do 25 znaków alfanumerycznych
  • Wersja 2 ma 25 wierszy i 25 kolumn i może zakodować do 47 znaków alfanumerycznych
  • Wersja 3 ma 29 wierszy i 29 kolumn i może zakodować do 77 znaków alfanumerycznych
  • ...
  • Wersja 40 ma 177 wierszy i 177 kolumn i może zakodować do 4296 znaków alfanumerycznych

Nie należy mylić liczby wierszy i kolumn z rozmiarem obrazu z kodem QR. Rozmiar kodu w pikselach jest określany w zwykły sposób za pomocą parametru chs.

Na podstawie ilości dostarczonych danych interfejs API określi, której wersji użyć.

Odpowiednia wersja kodu QR zostanie zwrócona w zależności od liczby podanych znaków. Jeśli na przykład podasz 55 znaków alfanumerycznych, otrzymasz kod QR w wersji 3. Może się on jednak zmienić, jeśli wyraźnie określisz poziom korekcji błędów (EC) za pomocą parametru chld.

Zanim wygenerujesz kod QR, zastanów się, na jakim urządzeniu jest on odczytywany: najlepsze czytniki kodów QR są w stanie odczytywać kody w wersji 40, a urządzenia mobilne mogą odczytywać tylko wersję 4.

W tej tabeli podsumowano cechy kilku różnych wersji:

Wersja Wiersze x Kolumny Poziom EC Maksymalna liczba znaków według poziomu EC i typu znaków
Cyfry: 0–9 Alfanumery:
0 do 9, A do Z,
spacja, $ % * + - . / :
Binarne kanji
1 21 × 21 L 41 25 17 10
P 34 20 14 8
P 27 16 11 7
H 17 10 7 4
2 25 × 25 L 77 47 32 20
P 63 38 26 16
P 48 29 20 12
H 34 20 14 8
3 29 × 29 L 127 77 53 32
P 101 61 42 26
P 77 47 32 20
H 58 35 24 15
4 33 × 33 L 187 114 78 48
P 149 90 62 38
P 111 67 46 28
H 82 50 34 21
10 57x57 L 652 395 271 167
P 513 311 213 131
P 364 221 151 93
H 288 174 119 74
40 177x177 L 7089 4296 2953 1817
P 5596 3391 2 331 1435
P 3993 2420 1663 1024
H 3 057 1852 1273 784

Dodatkowe informacje i standardy

Standard kodu QR jest znakiem towarowym firmy Denso Wave, Inc.

ISO sprzedaje specyfikację w języku angielskim na swojej stronie. Wersja japońska jest bezpłatna.

Standardy kodów QR są zatwierdzone jako:

  • standard AIM International (Automatyczna Identyfikacja Producentów International) (ISS – kod QR) w październiku 1997 r.
  • standardu JEIDA (Japanese Electronic Industry Development Association) (JEIDA-55) w marcu 1998 r.
  • standardu JIS (Japanese Industrial Standards) (JIS X 0510) w styczniu 1999 r.
  • międzynarodowa norma ISO (ISO/IEC18004) w czerwcu 2000 r.

Oprogramowanie czytnika kodów QR jest dostępne z wielu źródeł. Google udostępnia bezpłatnie bibliotekę czytnika kodów QR – Zebra Crossing (ZXing). Szczegółowe informacje znajdziesz na stronie http://code.google.com/p/zxing/.

Krótki przewodnik po standardowym kodowaniu informacji w kodach kreskowych znajdziesz w artykule Zawartość kodu kreskowego.