Skip to content

Darmowy generator kodów kreskowych — EAN-13, UPC-A, Code 128

Generuj EAN-13, UPC-A, Code 128, Code 39 i 11 innych typów kodów kreskowych jako SVG lub gotowy do druku PNG. Wpisz 12 cyfr — cyfra kontrolna dopisze się sama; przy błędzie strona wskaże właściwą cyfrę.

Bez śledzenia Działa w przeglądarce Bezpłatne
Kody kreskowe są rysowane w przeglądarce. Nic nie jest przesyłane.

Wygląd i rozmiar druku

Generowanie wsadowe (jedna wartość w wierszu)

Wiersze, które nie przejdą walidacji, są wymienione wraz z powodem w pliku skipped.txt wewnątrz ZIP-a.

Kod kreskowy skanowany w handlu detalicznym wymaga prefiksu firmowego wydanego przez GS1. To narzędzie rysuje grafikę; nie przydziela numerów. Etykiety wewnętrzne nie wymagają rejestracji.

Każda liczba na tej stronie została wyliczona, a potem sprawdzona dwukrotnie. Cyfry kontrolne zweryfikowano względem realnych, opublikowanych kodów kreskowych — ISBN-13 wydrukowanego podręcznika, puszki Coca-Coli 330 ml oraz przykładów referencyjnych dla UPC-A i EAN-8 — a niezależnie także względem własnych obliczeń enkodera. Liczby modułów Code 128 pochodzą ze wzoru testowanego próbka po próbce względem wyrenderowanego wyniku, i właśnie w ten sposób odkryto karę za nieparzystą liczbę cyfr. Twierdzenie, że prefiksy GS1 nie wskazują kraju pochodzenia, to opublikowane oficjalnie stanowisko samego GS1. — Go Tools Engineering · Sep 24, 2026

Napisane i sprawdzone przez programistów, którzy budują narzędzia kodujące Go Tools. Liczby modułów, rachunek cyfry kontrolnej i opisane tu zachowanie enkodera zostały zmierzone na działającym silniku, a nie przepisane z cudzych streszczeń.

Szybkie odpowiedzi

Czy mogę sprzedawać produkt z kodem kreskowym wygenerowanym tutaj?

Tylko jeśli numer został przydzielony przez GS1. Obraz, który rysuje ta strona, jest poprawny i da się zeskanować, ale zawarty w nim *numer* musi zostać przydzielony przez organizację członkowską GS1, zanim system sprzedawcy go zaakceptuje. Wymyślenie numeru zaczynającego się od zarejestrowanego prefiksu grozi kolizją z numerem już przypisanym komuś innemu. Etykiety wewnętrzne — półki, pojemniki, środki trwałe, zlecenia robocze — nie wymagają żadnego przydziału; użyj Code 128.

Czy EAN-13 wymaga 12 cyfr, czy 13?

Obie długości działają. Trzynasta to cyfra kontrolna wyliczona z pierwszych dwunastu, więc można wpisać jedną z dwóch długości. Po wpisaniu 12 cyfra kontrolna zostaje dopisana i pokazana; po wpisaniu 13 zostaje zweryfikowana, a przy niezgodności wskazywana jest oczekiwana cyfra.

Czy kod kreskowy zaczynający się od 690 oznacza, że produkt powstał w Chinach?

Nie. 690–699 i 680–681 to zakresy prefiksów administrowane przez GS1 China, 489 przez Hongkong, 471 przez Tajwan, a 958 przez Makau. GS1 jednak wprost stwierdza, że firma członkowska może produkować w dowolnym miejscu na świecie i może licencjonować prefiks od wybranej przez siebie organizacji, więc prefiks identyfikuje **kto wydał numer**, a nie skąd pochodzi towar.

Dlaczego kod kreskowy skanuje się na ekranie, ale nie na papierze?

Niemal zawsze strefa ciszy albo przeskalowany obraz. W kolejności, jak często to bywa przyczyną: strefa ciszy została obcięta przez krawędź etykiety lub ramkę; obraz został przeskalowany w programie do składu, więc moduł nie jest już całkowitą liczbą punktów drukarki; szerokość modułu jest po prostu za mała dla danego skanera i rozdzielczości druku. Wszystkie trzy rzeczy są ustalane przed wydrukiem, i wszystkie trzy strona pokazuje wprost.

Co naprawdę zawiera kod kreskowy 1D

Liniowy kod kreskowy to kodowanie długości serii (run-length encoding) jednego ciągu znaków. Każdy znak zamienia się w stały wzór kresek i odstępów, mierzony w modułach — szerokość najwęższej kreski, zapisywana jako X. Code 128 zużywa 11 modułów na symbol; ciąg dziewięciu znaków wychodzi 134 moduły szerokości, bo całość to 11 × (znaki + 2) + 13: jeden symbol startowy, jeden symbol kontrolny i 13-modułowy wzorzec stopu.

Dwie rzeczy, które są częścią symbolu, choć wyglądają jak puste miejsce, to właśnie tam najczęściej zawodzą domowej roboty kody kreskowe. Pierwsza to strefa ciszy — pusty margines po obu stronach; skaner używa go do znalezienia krawędzi kodu, a logo albo linia tabeli wchodząca w tę strefę czyni cały kod nieczytelnym. Druga to cyfra kontrolna w symbolikach detalicznych — pojedyncza cyfra wyliczona z pozostałych, dzięki której skaner odrzuca błędny odczyt zamiast zwrócić zły numer produktu.

Code 128   text = "HELLO-123"

  symbols = 1 (start) + 9 (data) + 1 (check)   = 11
  modules = 11 × 11 + 13 (stop)                = 134
  X = 3px                                      = 402 px
  + quiet zone 10X + 10X                       = 462 px

Co robi ten generator

Rachunek cyfry kontrolnej, pokazany wprost

Każda cyfra z jej wagą, suma ważona i krok modulo. Gdy wkleisz 13 cyfr, a ostatnia jest błędna, strona wprost mówi, jaka powinna być, i jednym kliknięciem podaje poprawiony numer — zamiast zgłosić po prostu „nieprawidłowy”.

Strefa ciszy narysowana na podglądzie

Nie tylko liczba w tabeli. Margines wymagany przez specyfikację jest zabarwiony na podglądzie i jest asymetryczny tam, gdzie asymetryczna jest sama specyfikacja — EAN-13 wymaga 11X po lewej i 7X po prawej, a nie 10X po obu stronach.

Szerokość modułu w punktach, przy rozdzielczości drukarki

Jeden moduł przy 203 dpi to 0.125 mm, przy 300 dpi 0.085 mm, przy 600 dpi 0.042 mm. Panel przelicza wybraną szerokość modułu na milimetry przy wskazanej rozdzielczości, więc rozmiar wydruku jest decyzją, a nie niespodzianką.

Szerokość Code 128, z wybranym podzbiorem

W podzbiorze C cyfry łączą się w pary, po dwie na symbol, więc osiem cyfr zajmuje 79 modułów, podczas gdy kodowanie znak po znaku zajęłoby 123 — o 35.8% węziej. Odczyt pokazuje, który podzbiór został użyty i ile dzięki temu zaoszczędzono.

Piętnaście symbolik, bez przesyłania

EAN-13, EAN-8, UPC-A, UPC-E, ITF-14, Interleaved 2 of 5, Code 128 z podzbiorami A/B/C, Code 39, Code 93, Codabar, MSI i Pharmacode. Wszystko rysuje JavaScript działający na stronie; żadna wartość nigdzie nie jest wysyłana.

Wsad do ZIP, z wyjaśnionymi błędami

Wklej po jednej wartości w wierszu i dostań pliki SVG lub PNG w ZIP-ie. Wiersze, które nie przejdą walidacji, nie znikają po cichu — trafiają do skipped.txt wraz z powodem, więc gdy ze 100 wartości wyjdzie 97 plików, wiesz, których trzech zabrakło i dlaczego.

Inne sposoby na wygenerowanie tego samego kodu kreskowego

bwip-js

npx bwip-js --bcid=ean13 --text=9780306406157 --scale=3 out.png

Silnik wywodzący się z BWIPP o zdecydowanie najszerszym pokryciu symbolik — ponad sto, w tym 2D i pocztowe — dostępny jako CLI i biblioteka. Warto po niego sięgnąć, gdy kody kreskowe generuje krok builda albo gdy potrzebna jest symbolika, której nie obejmuje ta strona. Uwaga: nie dodaje strefy ciszy, dopóki nie przekażesz paddingleft/paddingright, a height podaje się w milimetrach, nie w pikselach.

python-barcode

python -m barcode ean13 9780306406157 -o out.svg

Wygodny wewnątrz pipeline'u w Pythonie, domyślnie zapisuje SVG. Obejmuje rodzinę EAN/UPC, Code 39 i Code 128; bardziej niszowe symboliki i identyfikatory aplikacji GS1 są poza zakresem.

ZXing / zxing-cpp

Biblioteki w Javie i C++, generator plus czytnik

Zwykły wybór, gdy ten sam kod źródłowy musi zarówno zapisywać, jak i odczytywać kody. Jego czytnik to bardziej znana połowa; jeśli chodzi o zapis, pokrycie symbolik jest węższe niż w BWIPP.

Czcionki kodów kreskowych w Excelu lub Wordzie

Zainstaluj czcionkę TrueType Code 39 lub Code 128, wpisz wartość

Popularne, bo nie wymaga żadnych narzędzi, i zwykłe źródło etykiet, których nie da się zeskanować. Czcionki Code 39 wymagają samodzielnego dodania ograniczników *; czcionki Code 128 wymagają samodzielnego wyliczenia znaku kontrolnego; a czcionka renderuje się w rozmiarze, jaki podaje dokument, bez żadnej kontroli nad szerokością modułu.

Organizacja członkowska GS1

Wystąp o prefiks firmowy

To nie generator i nie jest opcjonalne, jeśli kod ma działać w sprzedaży detalicznej. Numer wydaje GS1; narysowanie kresek to łatwa część. Wewnętrzne etykiety magazynowe i etykiety środków trwałych w ogóle nie wymagają przydziału.

Przykłady obliczeń

EAN-13: wejście 12 cyfr, cyfra kontrolna wyliczona

978030640615
9780306406157

digit    9  7  8  0  3  0  6  4  0  6  1  5
weight  ×1 ×3 ×1 ×3 ×1 ×3 ×1 ×3 ×1 ×3 ×1 ×3
product  9 21  8  0  3  0  6 12  0 18  1 15

sum = 93,  93 mod 10 = 3,  check = (10 - 3) mod 10 = 7

Wagi na przemian to 3 i 1, licząc od cyfry najbardziej wysuniętej na prawo w ciągu wejściowym. Podręczniki zwykle mówią o „pozycjach nieparzystych i parzystych”, co wymusza inny wzór dla każdej długości; liczenie od prawej daje jedną regułę, która obejmuje 12 cyfr EAN-13, 11 cyfr UPC-A i 7 cyfr EAN-8. Ten konkretny numer to ISBN-13 znanego podręcznika, więc wynik można sprawdzić na wydrukowanej książce.

Błędna cyfra kontrolna zostaje nazwana, a nie odrzucona

9780306406158
The last digit should be 7, not 8.
[ Use 9780306406157 ]

Leżący pod spodem enkoder odrzuca taki numer od razu — zgłasza ean13badCheckDigit. To poprawne, ale bezużyteczne: numer przepisany z opakowania dużo częściej ma jedną błędnie wpisaną cyfrę, niż jest strukturalnie zły, a jedyne, czego potrzebuje osoba, to wiedzieć, która to cyfra. Dlatego walidacja odbywa się, zanim wywołany zostanie enkoder.

Podzbiór C w Code 128 zmniejsza szerokość cyfr o połowę

12345678
subset C:  4 symbols  ->  79 modules
subset B:  8 symbols  -> 123 modules

saving: 35.8%

Podzbiór C koduje dwie cyfry na symbol. Liczba modułów wynika ze wzoru 11 × symbole + 35, więc zmniejszenie liczby symboli o połowę niemal o połowę zmniejsza też szerokość. Dlatego czysto numeryczny kod wewnętrzny warto utrzymać w całości numerycznym — dodanie jednej litery zmusza cały ciąg z powrotem do jednego znaku na symbol.

Nieparzysta liczba cyfr kosztuje symbol przełączający

12345
12345    (5 digits)  -> 79 modules
123456   (6 digits)  -> 68 modules
12345678 (8 digits)  -> 79 modules

Podzbiór C nie potrafi sparować cyfry, która zostaje bez pary, więc numeryczny ciąg o nieparzystej długości płaci za jeden dodatkowy symbol przełączający. Konsekwencja jest naprawdę nieintuicyjna i warto ją znać, zanim zaprojektujesz schemat numeracji: sześć cyfr jest węższe niż pięć, a pięć cyfr zajmuje dokładnie tyle samo miejsca co osiem. Utrzymuj wewnętrzne kody numeryczne w parzystej długości, a węższy kod kreskowy dostaniesz za darmo.

Szerokość modułu, punkty i milimetry

X = 3 modules px, printer = 203 dpi
1 dot @ 203 dpi = 0.125 mm
X = 3 dot        = 0.375 mm
EAN-13 symbol    = 95 modules
+ quiet 11X + 7X = 113 X  = 42.4 mm

Drukarka termiczna potrafi stawiać wyłącznie całe punkty. Eksport w 1× i druk w tej samej rozdzielczości sprawia, że każdy moduł pozostaje całkowitą liczbą punktów. Późniejsze skalowanie obrazu w programie do składu już nie: moduł staje się ułamkową liczbą punktów, drukarka zaokrągla każdą kreskę osobno, a stosunek kreski do odstępu dryfuje, aż skanery zaczynają zawodzić.

Jak wygenerować kod kreskowy

  1. 1

    Wybierz symbolikę

    Produkty detaliczne używają EAN-13 (EAN-8 dla małych opakowań, UPC-A w Ameryce Północnej). Kartony zbiorcze używają ITF-14. Wszystko, co jest do użytku wewnętrznego — etykiety półkowe, etykiety środków trwałych, zlecenia robocze — powinno używać Code 128, które nie wymaga rejestracji i pakuje cyfry po dwie na symbol.

  2. 2

    Wpisz dane

    EAN-13 przyjmuje 12 lub 13 cyfr, UPC-A 11 lub 12, EAN-8 7 lub 8. Przy krótszej formie cyfra kontrolna zostanie dopisana automatycznie. Code 128 i Code 39 przyjmują tekst o zmiennej długości.

  3. 3

    Ustaw rozmiar druku, nie przybliżenie

    Wybierz szerokość modułu i rozdzielczość drukarki, której użyjesz. Panel pokazuje, ile milimetrów ma jeden moduł przy tej rozdzielczości. To zmiana rozmiaru wyeksportowanego obrazu w programie do składu psuje skanowalność, więc rozmiar ustaw właśnie tutaj.

  4. 4

    Eksportuj

    SVG pozostaje ostre przy dowolnym rozmiarze druku i to jego preferuje oprogramowanie do etykiet. PNG w 2× lub 4× jest dla miejsc, które nie przyjmują wektorów. Tryb wsadowy przyjmuje jedną wartość na wiersz i zwraca ZIP, z listą odrzuconych wierszy wraz z powodem.

Błędy, które to narzędzie tłumaczy, zamiast po prostu odrzucić

„Nieprawidłowy kod kreskowy”, gdy pomylono jedną cyfrę

13-cyfrowy EAN-13, w którym ostatnia cyfra nie zgadza się z pozostałymi dwunastoma, to najczęstsze wejście w rzeczywistym użyciu. Dowiedzieć się, jaka cyfra powinna tam być, to jedno spojrzenie; usłyszeć, że numer jest nieprawidłowy, to wycieczka do osobnego kalkulatora.

✗ Niepoprawne
9780306406158  ->  nieprawidłowy EAN-13
✓ Poprawne
9780306406158  ->  ostatnia cyfra powinna być 7, nie 8
                   [ Użyj 9780306406157 ]

Pozwolenie, by narzędzie po cichu dopisało cyfrę kontrolną

Dwanaście cyfr na wejściu i trzynaście na wyjściu to zachowanie, którego chcesz, ale tylko wtedy, gdy zostaniesz o tym poinformowany — inaczej numer, który drukujesz, różni się od numeru w arkuszu, i nikt nie wie, który jest właściwy.

✗ Niepoprawne
wejście:  978030640615
wyjście: kod kreskowy (13 cyfr, bez wzmianki)
✓ Poprawne
wejście:  978030640615
wyjście: kod kreskowy + „cyfra kontrolna 7 dodana automatycznie”

Wstawienie chińskiego tekstu do Code 128

Enkoder cię nie powstrzyma. To, co powstanie, da się zeskanować, ale nie zdekoduje się do znaków, które wpisałeś, a kod kreskowy jest zauważalnie szerszy, niż sugerowałaby długość tekstu.

✗ Niepoprawne
Code 128 <- 订单  (2 znaki, 134 moduły — tyle samo co 9 znaków ASCII)
✓ Poprawne
Code 128 <- ORDER-2026-0042  (ASCII, szerokość odpowiada treści)

Strefa ciszy pożarta przez ramkę etykiety

Generatory domyślnie w ogóle nie zostawiają marginesu. Umieszczony przy krawędzi wąskiej etykiety albo wewnątrz projektu w ramce kod traci pustą przestrzeń, której skaner potrzebuje, by go zlokalizować, i po prostu nigdy się nie odczytuje.

✗ Niepoprawne
|▐▌▐▐▌ ▐▌▐ ▌▐▐▌|   <- krawędź etykiety dotyka kresek
✓ Poprawne
|    ▐▌▐▐▌ ▐▌▐ ▌▐▐▌    |   <- 11X po lewej, 7X po prawej pozostaje puste

Skalowanie wyeksportowanego obrazu, by pasował do układu

Zmiana rozmiaru do „ładnego” wymiaru fizycznego sprawia, że jeden moduł staje się ułamkową liczbą punktów drukarki. Drukarka zaokrągla każdą kreskę osobno, stosunek kreski do odstępu dryfuje, a kod stopniowo się degraduje — co jest gorsze niż całkowita awaria, bo przechodzi test na biurku, a zawodzi w terenie.

✗ Niepoprawne
eksport w 1x, a potem skalowanie do 38 mm w programie do składu
✓ Poprawne
ustaw szerokość modułu tak, by kod miał 38 mm przy 300 dpi, eksportuj w 1x, wstaw w 100%

Do czego ludzie tego używają

Sprawdzenie numeru, zanim wydrukujesz 5000 etykiet
Masz 13-cyfrowy numer z arkusza kalkulacyjnego i żadnego sposobu, by sprawdzić, czy ostatnia cyfra się zgadza. Wklej go: suma ważona zostaje rozpisana, a błędna ostatnia cyfra zostaje nazwana wprost, zamiast wrzucić ją do worka „nieprawidłowy”.
Etykiety wewnętrzne: półki, pojemniki, środki trwałe
Lokalizacje magazynowe, etykiety środków trwałych i numery zleceń roboczych w ogóle nie potrzebują zarejestrowanego numeru. Code 128 koduje litery i cyfry, a cyfry łączy w pary po dwie na symbol, więc numeryczny kod lokalizacji pozostaje zwarty.
Etykiety kartonów w wysyłce detalicznej
ITF-14 koduje 14-cyfrowy numer jednostki logistycznej, wyprowadzony z GTIN produktu. Tutaj przyjmuje 13 lub 14 cyfr, a cyfra kontrolna liczona jest według tej samej reguły modulo 10 co w EAN-13.
Odtworzenie kodu kreskowego ze zdjęcia opakowania
Odczytaj cyfry wydrukowane pod kreskami, wpisz je i porównaj. Ponieważ cyfra kontrolna jest weryfikowana, błędnie odczytaną cyfrę złapiesz tutaj, a nie dopiero przy kasie.
Generowanie serii kolejnych kodów
Wklej kolumnę wartości z arkusza kalkulacyjnego do panelu wsadowego i pobierz cały zestaw jako SVG. Pliki wektorowe można wrzucić prosto do oprogramowania do etykiet bez ponownego próbkowania.

Jak kodowana jest każda symbolika

EAN-13 — 13 cyfr, a strefa ciszy jest asymetryczna
Dwanaście cyfr danych plus jedna cyfra kontrolna. Strefa ciszy to 11X po lewej i 7X po prawej; symetryczny margines albo marnuje miejsce, albo obcina lewą krawędź. Cyfry czytelne dla człowieka są częścią określonego w specyfikacji układu, a pierwsza cyfra siedzi poza kreskami po lewej stronie — dlatego wyśrodkowanie tego tekstu, jak robi to część generatorów, po cichu zjada lewą strefę ciszy.
UPC-A i UPC-E — ten sam numer, dwie długości
UPC-A to 11 cyfr plus cyfra kontrolna, licząca się według tej samej reguły modulo 10 co EAN-13; numer UPC-A to EAN-13 z zerem na początku. UPC-E to 6-cyfrowa forma skompresowana dla małych opakowań, którą skaner odtwarza do pełnego numeru, a nie traktuje jako osobny numer.
Code 128 — trzy podzbiory, wybierane automatycznie
Podzbiór A obejmuje znaki sterujące i wielkie litery, B obejmuje drukowalny zakres ASCII wraz z małymi literami, C koduje dwie cyfry na symbol. Tryb automatyczny przełącza się między nimi, żeby uzyskać najkrótsze kodowanie, dlatego odczyt pokazuje, na którym podzbiorze skończył: C dla cyfr o parzystej długości, CB, gdy nieparzysta długość wymusiła przełączenie, B dla wszystkiego, co zawiera znak niebędący cyfrą.
Code 128 nie pomieści chińskiego, japońskiego ani koreańskiego tekstu
Jego zestaw znaków kończy się na Latin-1. Podanie enkoderowi tekstu CJK nie wywołuje błędu — po cichu powstaje szerszy kod kreskowy, którego treść już nie jest tym, co wpisano (jeden znak Han zajmuje szerokość symbolu odpowiadającą pięciu znakom ASCII). Ponieważ ta awaria jest cicha, ta strona odrzuca takie dane od razu, zamiast narysować kod kreskowy, którego błędność odkryłbyś dopiero po wydruku.
Code 39 i Code 93 — samokontrolujące się, bez rejestracji
Code 39 koduje cyfry, wielkie litery i siedem symboli, nie potrzebuje znaku kontrolnego i odczyta go niemal każdy skaner, jaki kiedykolwiek powstał; kompromisem jest szerokość — około 13 modułów na znak. Code 93 jest gęstszy i dodaje dwa obowiązkowe znaki kontrolne. Oba pozostają powszechne w etykietowaniu przemysłowym i wojskowym.
ITF-14 i Interleaved 2 of 5 — pary cyfr
Interleaved 2 of 5 koduje cyfry parami — jedna cyfra w kreskach, kolejna w odstępach — więc przyjmuje tylko parzystą ich liczbę; wartość o nieparzystej długości dostaje zero na początku, co zmienia kodowany numer. ITF-14 to stała, 14-cyfrowa forma dla kartonów zbiorczych, zwykle drukowana z grubą ramką, tzw. bearer bar, której zadaniem jest niedopuszczenie, by częściowo uszkodzona krawędź została odczytana jako krótszy kod.

Jak zrobić kod kreskowy, który naprawdę się zeskanuje

Rozmiar druku ustal tutaj i już nigdy nie skaluj obrazu
Ustaw szerokość modułu i rozdzielczość w panelu wyglądu i wyeksportuj w 1×. Przeciąganie rogu obrazu w Wordzie, Illustratorze czy programie do etykiet ponownie próbkuje moduły do ułamkowej liczby punktów drukarki, a nierówne kreski to najczęstsza pojedyncza przyczyna tego, że kod skanuje się na ekranie, ale nie na papierze.
Zostaw strefę ciszy naprawdę pustą
Zabarwione pasy na podglądzie są częścią symbolu. Nic nie może w nich siedzieć — żadna ramka, logo, sąsiedni tekst ani krawędź etykiety. Jeśli etykieta jest za wąska, by je pomieścić, zmniejsz szerokość modułu, zamiast przycinać.
Do wszystkiego, co idzie do druku, wybieraj SVG
Wyjście wektorowe nie ma rozdzielczości, więc sterownik drukarki rastruje kreski jednorazowo, we własnej rozdzielczości urządzenia. PNG ma już ustaloną siatkę pikseli, a jeśli ta siatka nie pasuje do siatki drukarki, kreski zostają ponownie próbkowane.
Utrzymuj wewnętrzne kody numeryczne w parzystej długości
Code 128 łączy cyfry w pary po dwie na symbol; nieparzysta ich liczba kosztuje dodatkowy symbol przełączający, więc pięciocyfrowy kod jest szerszy niż sześciocyfrowy. Jeśli projektujesz schemat numeracji od zera, to darmowa oszczędność szerokości.
Testuj skanerem, który naprawdę będzie to czytał
Wydrukuj jedną etykietę na prawdziwej drukarce, w rzeczywistym rozmiarze, na docelowym materiale, i zeskanuj ją prawdziwym urządzeniem. Aplikacje aparatu w telefonie są dużo bardziej wyrozumiałe niż skaner laserowy pracujący ze stałej odległości, a różne kombinacje materiału termicznego i taśmy różnią się tym, jak bardzo rozlewa się tusz.

Często zadawane pytania

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.

Powiązane narzędzia

Zobacz wszystkie narzędzia →