BraUPC wielkość: 89 KB. Status: free
Kod kreskowy UPC - Uniwersalny Kod Produktów
(Universal Product Code).
Rys.1 Formularz do generowania kodu UPC
Kod kreskowy UPC - kod numeryczny odwzorowujący wyłącznie cyfry od 0 do 9, występujacy w dwóch wersjach UPC-A-13 i UPC-E.
- kod kreskowy UPC-A - wersja pełna
- koduje 12 znaków w postaci kresek, w tym 10 znaków danych. Pierwszy znak kodu kreskowego UPC-A określa Nr systemu kodowania:
- budowa kodu jest modułowa - każdy znak (cyfra) zbudowany jest z 7-miu modułów. Szerokość pojedynczej kreski może zawierać się w granicach 1 - 4 modułów, przy czym jedna cyfra musi zawierać dwie jasne i dwie ciemne kreski,
- - ostatni znak (bezpośrednio przed znakiem Stop) jest liczbą kontrolną,, którą oblicza się w/g określonego algorytmu,
- posiada identyczne znaki Start (na początku) i Stop (na końcu) - tworzą je dwie czarne kreski przedzielone białą kreską o szerokości 1-go modułu każda. Kreski te wydłużone są do dołu o szerokość 5-ciu modułów. Pośrodku występuje znak rozdzielający, także wydłużony do dołu o szerokość 5-ciu modułów. Znak rozdzielający składa się z 5-ciu kresek, każda o szerokości 1-go modułu (naprzemiennie biała, czarna, biała, czarna, biała).
- kod kreskowy UPC-E - wersja skrócona,
- koduje 6 znaków w postaci kresek,
- wszystkie znaki kodu UPC-E są jednakowej długości,
- posiada identyczny znak Startu jak kod kreskowy UPC-A, ale znak Stop jest szerszy i składa się z 6-ciu kresek (naprzemiennie biała, czarna, itd.),
- nie występuje w nim pośrodku znak rozdzielający, ani liczba kontrolna,
Znaki kodowane są w trzech zbiorach A, B i C w/g poniższej tabeli:
Zbiory kodowania znaków
| Znak | Zbiór A | Zbiór B | Zbiór C |
| 0 |
|
|
|
| 1 |
|
|
|
| 2 |
|
|
|
| 3 |
|
|
|
| 4 |
|
|
|
| 5 |
|
|
|
| 6 |
|
|
|
| 7 |
|
|
|
| 8 |
|
|
|
| 9 |
|
|
|
- kod kreskowy UPC-A - lewa część kodowana jest w/g zbioru A.
prawa część kodowana jest w/g zbioru C.
- kod kreskowy UPC-E kodowanie możliwe jest dla NoSys=0
oraz (co nie jest zgodne z Tabelą 1) dla NoSys=1,
która określa wartość 1 jako zarezerwowaną.
Kodowanie poszczególnych znaków zależne jest od liczby kontrolnej konwertowanego kodu UPC-A oraz od Nr systemu kodowania.
Przykładowa bazie dopuszcza także NoSys = 1 jako wartość prawidłową.
Kod taki był prawidłowo odczytywany przez czytnik kodów.
Tabela 3. A - Zbiór A, B Zbiór B
| ChkDig | NoSys=0 | NoSys=1 |
|---|
| 0 | BBBAAA | AAABBB |
| 1 | BBABAA | AABABB |
| 2 | BBAABA | AABBAB |
| 3 | BBAAAB | AABBBA |
| 4 | BABBAA | ABAABB |
| 5 | BAABBA | ABBAAB |
| 6 | BAAABB | ABBBAA |
| 7 | BABABA | ABABAB |
| 8 | BABAAB | ABABBA |
| 9 | BAABAB | ABBABA |