algorytm.org

EAN-8

Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

EAN-8
Ocena użytkowników:***** / 4
SłabyŚwietny 
Wpisany przez Tomasz Lubiński, 08 grudnia 2005 19:07

By kod EAN-8 mógł zostać automatycznie "przeczytany" przez urządzenia skanujące musi zostać przetworzony do postaci kodu kreskowego. Kod kreskowy EAN-8 składa się z 67 białych i czarny prążków znajdujących się jeden przy drugim. Przyjmujemy, że 1 oznacza pasek ciemny, a 0 oznacza pasek jasny.EAN
    Kod kreskowy ma następującą strukturę
  • lewe paski ochronne (ang. start sentinel) kodowane są jako: 101
  • cyfry 1-4 kodowane są lewostronnie
  • środkowe paski ochronne (ang. central sentinel) kodowane jako: 01010
  • cyfry 5-8 kodowane są prawostronnie
  • prawe paski ochronne (ang. stop sentinel) kodowane są jako: 101

Odmienny sposób kodowania pasków z lewej i prawej strony, pozwala stwierdzić czy kod czytany jest normalnie czy "do góry nogami". Poniżej przedstawiono tabelę kodowania lewo i prawostronnego.

cyfrakodowanie
lewostronne
kodowanie
prawostronne
000011011110010
100110011100110
200100111101100
301111011000010
401000111011100
501100011001110
601011111010000
701110111000100
801101111001000
900010111110100

Przykład:

Zbudujemy teraz kod kreskowy dla kodu 55123457
  • lewe paski ochronne (ang. start sentinel) kodowane są jako: 101
  • 1 cyfra to 5, kodujemy ją lewostronnie: 0110001
  • 2 cyfra to 5, kodujemy ją lewostronnie: 0110001
  • 3 cyfra to 1, kodujemy ją lewostronnie: 0011001
  • 4 cyfra to 2, kodujemy ją lewostronnie: 0010011
  • środkowe paski ochronne (ang. central sentinel) kodowane jako: 01010
  • 5 cyfra to 3, kodujemy ją prawostronnie: 1000010
  • 6 cyfra to 4, kodujemy ją prawostronnie: 1011100
  • 7 cyfra to 5, kodujemy ją prawostronnie: 1001110
  • 8 cyfra to 7, kodujemy ją prawostronnie: 1000100
  • prawe paski ochronne (ang. stop sentinel) kodowane są jako: 101

Zatem gotowy kod kreskowy to:
1010110001011000100110010010011010101000010101110010011101000100101
Co po zapisaniu w wersji graficznej (z wydłużonymi paskami ochronnymi) wygląda nasepująco:

EAN-8

Ze względu na techniczne ograniczenia sprzętu odczytującego symbole kodów kreskowych, ich wielkość musi się mieścić w ściśle określonych przez odpowiednie normy granicach.

Oznaczenie
wymiarów
S.C.
współczynnik
powiększenia
szeroskośćwysokość
00,821,3817,31
10,924,0619,48
21,026,7321,64
31,129,4023,80
41,232,0825,97
51,437,4230,29


Przykład w JavaScript:
EAN8

Implementacje
AutorJęzyk
programowania
KomentarzOtwórzPobierzOcena
Tomasz LubińskiC/C++Borland Builder 6
.cpp
.cpp
***** / 1
Tomasz LubińskiDelphi/PascalBorland Delphi 5
.pas
.pas
***** / 1
Tomasz LubińskiJava
.java
.java
***** / 1
Tomasz LubińskiJavaScriptFirefox 3.0+, Safari 3.0+, Chrome 3.0+, Opera 9.5+, IE 9.0+
.js
.js
***** / 0
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język
programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie

Poprawiony: 29 sierpnia 2012 20:25
Dodaj komentarz