Czy mogę użyć kodu kreskowego wygenerowanego tutaj na produkcie w sklepie?
Grafika jest poprawna i da się zeskanować, ale kod kreskowy do sprzedaży detalicznej nadaje się do użytku tylko wtedy, gdy zakodowany w nim numer został formalnie przydzielony. Numery wydają organizacje członkowskie GS1 — dla Chin kontynentalnych odpowiednia jest organizacja chińska, a w każdym innym rynku odpowiadający jej podmiot. To narzędzie rysuje kreski; nie przydziela numerów, i żaden generator online tego nie potrafi. Jeśli etykiety są przeznaczone do własnego magazynu, na półki lub środki trwałe, żaden przydział nie jest potrzebny i właściwym wyborem jest Code 128.
Jak liczy się cyfrę kontrolną EAN-13?
Bierze się dwanaście cyfr i licząc od tej najbardziej na prawo, mnoży się je na przemian przez 3 i 1. Iloczyny się sumuje. Cyfra kontrolna to liczba, która dopełnia tę sumę do najbliższej wielokrotności dziesięciu — formalnie (10 - suma mod 10) mod 10. Dla 978030640615 suma wynosi 93, więc cyfra kontrolna to 7. Ta strona rozpisuje cały rachunek pod polem wejściowym. Ta sama reguła obejmuje 11 cyfr UPC-A, 7 cyfr EAN-8 i 13 cyfr ITF-14, bo liczenie wag od prawej sprawia, że długość nie ma znaczenia.
Co mówi prefiks taki jak 690 albo 489?
Identyfikuje organizację członkowską GS1, która wydała numer. 690–699 i 680–681 administruje GS1 China, 489 GS1 Hong Kong, 471 GS1 Taiwan, 958 GS1 Macau, a 978–979 są zarezerwowane dla ISBN. Nie mówi to o kraju produkcji: własne stanowisko GS1 głosi, że firmy członkowskie mogą produkować gdziekolwiek i mogą licencjonować prefiks od dowolnie wybranej organizacji. Szeroko powielane twierdzenie, że 690 oznacza „made in China”, zostało sprawdzone i odrzucone przez kilka organizacji zajmujących się weryfikacją faktów — dokładnie z tego powodu.
Którą symbolikę wybrać?
Jeśli towar sprzedawany jest w handlu detalicznym, wybór jest z góry narzucony: EAN-13, albo EAN-8, gdy opakowanie jest za małe, albo UPC-A w Ameryce Północnej, z ITF-14 na kartonie zbiorczym. Do zastosowań wewnętrznych warto użyć Code 128 — przyjmuje litery i cyfry, nie wymaga rejestracji i kompresuje dane numeryczne do dwóch cyfr na symbol. Code 39 warto rozważyć tylko wtedy, gdy trzeba obsłużyć bardzo stary skaner, bo przy tej samej treści jest około 40% szerszy.
Dlaczego pięciocyfrowy Code 128 jest szerszy niż sześciocyfrowy?
Ponieważ podzbiór C pakuje dwie cyfry w każdy symbol i nie potrafi sparować nieparzystej reszty, więc numeryczny ciąg o nieparzystej długości płaci za dodatkowy symbol przełączający podzbiór. Pięć cyfr wychodzi na 79 modułów szerokości, a sześć na 68 — a pięć cyfr wychodzi akurat tak samo szeroko jak osiem. Jeśli schemat numeracji jest wciąż na etapie projektowania, zrobienie kodów o parzystej długości nic nie kosztuje, a daje węższą etykietę.
Czym jest strefa ciszy i ile jej potrzeba?
To pusty margines po obu stronach kresek, mierzony w modułach (X). Skaner używa tego pustego odcinka, żeby znaleźć początek kodu, więc jest to część symbolu, a nie dekoracja. EAN-13 wymaga 11X po lewej i 7X po prawej — asymetria, na której łapią się generatory stosujące jeden margines po obu stronach. UPC-A chce 9X po każdej stronie, EAN-8 7X, a Code 128, Code 39 i ITF-14 co najmniej 10X. Na tej stronie wymagany margines jest zabarwiony na podglądzie, więc od razu widać, czy etykieta zostawia dla niego miejsce.
Czy kod kreskowy może zawierać chińskie znaki?
Nie w typowym liniowym kodzie kreskowym. Code 128 kończy się na Latin-1, a Code 39 jest jeszcze węższy zakresowo. Co gorsza, większość enkoderów nie odrzuca danych CJK — wytwarzają kod kreskowy, który się skanuje, ale dekoduje się do czegoś innego niż wpisany tekst, i jest zauważalnie szerszy, niż sugerowałaby liczba znaków. Ta strona zamiast tego blokuje takie dane. Jeśli naprawdę trzeba przenieść chiński tekst w skanowalnym symbolu, warto użyć generatora kodów QR — QR ma dedykowany tryb Kanji i nie ma takiego ograniczenia. SVG czy PNG?
SVG do wszystkiego, co pójdzie do druku. Nie ma własnej rozdzielczości, więc drukarka rastruje kreski jednorazowo, w swojej natywnej rozdzielczości, a każdy moduł trafia na cały punkt. PNG ma już ustaloną siatkę pikseli; jeśli ta siatka nie pokrywa się z siatką drukarki, kreski zostają ponownie próbkowane, a stosunek kreski do odstępu dryfuje. PNG warto użyć tylko tam, gdzie wektory nie są akceptowane, i eksportować w 2× lub 4×, żeby mieć zapas rozdzielczości.
Jak wygenerować od razu dużo kodów kreskowych?
Wystarczy otworzyć panel wsadowy, wkleić po jednej wartości w wierszu — działa też kolumna wklejona prosto z arkusza kalkulacyjnego — wybrać SVG lub PNG, i powstaje ZIP z plikami nazwanymi według każdej wartości. Wiersze, które nie przejdą walidacji, nie są po cichu pomijane: trafiają do skipped.txt wraz z powodem, więc gdy ze 100 wartości wyjdzie 97 plików, wiadomo, które trzy zawiodły i dlaczego. Wszystko dzieje się w przeglądarce, więc rozmiar wsadu ogranicza moc obliczeniowa lokalnego urządzenia, a nie limit serwera.
W jakiej rozdzielczości drukować?
W tej, jaką rzeczywiście ma drukarka — sens wybrania jej tutaj polega na tym, że strona potrafi powiedzieć, ile milimetrów ma jeden moduł. Przy 203 dpi, częstej rozdzielczości druku termicznego, jeden punkt to 0.125 mm, więc trzypunktowy moduł to 0.375 mm. Przy 300 dpi punkt to 0.085 mm, a przy 600 dpi 0.042 mm. Wyższa rozdzielczość pozwala użyć mniejszego modułu, co ma znaczenie, gdy etykieta jest mała; nie sprawia jednak, że źle dobrany rozmiar kodu zacznie się lepiej skanować.
Czy ta strona odczyta kod kreskowy ze zdjęcia?
Nie — tylko generuje. Odczytanie wydrukowanego liniowego kodu kreskowego ze zdjęcia to inny problem, wymagający innego narzędzia. Dekoder QR dostępny gdzie indziej na tej witrynie obsługuje wyłącznie kody QR i nie zdekoduje EAN-13 ani Code 128. Ta strona nie potrafi też sprawdzić, do jakiego produktu należy dany numer — to wymaga bazy produktów GS1.
Czy cokolwiek jest przesyłane?
Nie. Enkoder to moduł JavaScript ładowany do strony, a każdy kod kreskowy — łącznie z całym przebiegiem wsadowym i jego ZIP-em — powstaje na lokalnym urządzeniu. Nic z wpisanej treści nigdzie nie jest wysyłane, nie trafia do URL ani nie jest zachowywane po zamknięciu karty; lokalnie zapamiętywane są jedynie ustawienia wyglądu (szerokość modułu, wysokość kresek, rozdzielczość), żeby nie trzeba było ustawiać ich ponownie.