Każdy kod tutaj jest statyczny. Treść jest zakodowana w samym wzorze, więc kod jest danymi. Nie ma przekierowania przez POLPROG, nie ma skróconego linku, nie ma konta i nie ma czego wyłączyć ani czemu pozwolić wygasnąć. Kod wygenerowany dziś nadal prowadzi do tej samej treści za dziesięć lat, niezależnie od tego, czy ta strona jeszcze istnieje.
To odwrotność dynamicznego albo śledzącego kodu QR, który koduje link do cudzego serwera i przestaje działać w chwili, gdy tamta usługa zostanie zamknięta, zmieni cennik albo straci domenę.
Co potrafi zakodować
Link, zwykły tekst, dane Wi-Fi, kontakt vCard, e-mail, SMS, telefon, WhatsApp, położenie geograficzne i wydarzenie w kalendarzu. Każdy typ ma własny formularz, a każde pole jest sprawdzane pod kątem formatu, do którego trafi, więc kod Wi-Fi z hasłem i wizytówka z nazwiskiem wychodzą poprawnie zbudowane.
Koder
Kompletny koder ISO/IEC 18004, napisany jako moduł tej strony, a nie dociągnięty jako zależność: podział wejścia na ciągi numeryczne, alfanumeryczne i bajtowe, wybór najmniejszej pasującej wersji, budowa strumienia bitów, korekcja Reeda-Solomona, umieszczenie danych w przebiegu zygzakiem, a na koniec sprawdzenie wszystkich ośmiu masek i wybór tej z najniższą karą, dokładnie tak, jak wymaga norma. Napisanie kodera da się obronić tylko wtedy, gdy jest sprawdzony, a nie przyjęty na wiarę, więc gotowe macierze są porównywane bit po bicie z dojrzałą implementacją wzorcową, dla każdego trybu, każdego poziomu korekcji i szeregu wersji, a do tego dochodzi pełny cykl z odczytem.
Zanim to wydrukujesz
Kod QR, który wygląda poprawnie na ekranie, może być nieczytelny na papierze, dlatego generator ocenia wynik, a nie tylko go rysuje:
- Kontrast między dwoma wybranymi kolorami, z ostrzeżeniem poniżej mniej więcej 3:1, gdzie odczyty zaczynają zawodzić.
- Odwrócenie, bo większość dekoderów oczekuje ciemnego na jasnym, a część w ogóle nie odczyta odwrotności.
- Rozmiar modułu przy wybranym rozmiarze eksportu, bo symbol bywa gęstszy niż aparat, który ma go rozróżnić.
- Strefa ciszy, czyli jasne obramowanie, po którym skaner znajduje początek symbolu. Norma wymaga czterech modułów; poniżej pojawia się ostrzeżenie, a przy zerze generator odmawia.
- Pokrycie logo, mierzone wobec budżetu korekcji błędów, a nie szacowane na oko.
Pokrycie rośnie z kwadratem szerokości i to właśnie zaskakuje: logo szerokie na 30 procent kodu zasłania 9 procent, a szerokie na połowę zasłania 25 procent. Dodanie logo automatycznie podnosi poziom korekcji, logo powyżej połowy budżetu jest oznaczane, a powyżej całego budżetu odrzucane.
Gdzie to działa
W całości w Twojej przeglądarce. Koder, podgląd, składanie logo oraz eksport do PNG i SVG działają lokalnie, a za tą stroną nie ma żadnego punktu API, więc klucz Wi-Fi, prywatny numer telefonu albo wizytówka nie mają dokąd zostać wysłane, nawet przypadkiem. Dodane logo jest wczytywane przez FileReader i nigdy nie jest wysyłane. Otwórz panel sieci w przeglądarce podczas pracy z narzędziem, a pozostanie pusty.