Code 128
![](http://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/Code_128B.svg/260px-Code_128B.svg.png)
Code 128 is een soort streepjescode voor een reeks van variabele lengte van ASCII-tekens (van 7 bits per teken). Binnen de reeks kan gewisseld worden tussen drie tekensets: set A heeft geen kleine letters, maar wel veel stuurcodes, set B heeft ook kleine letters maar minder stuurcodes, en set C heeft alle 100 combinaties van twee cijfers, zodat cijferreeksen half zoveel series van 7 bits vergen.
Alle symbolen van de streepjescode bestaan uit een opeenvolging van streepjes "zwart, wit, zwart, wit, zwart, wit". Een zwart of wit streepje kan vier breedtes hebben. Als we de breedte van het dunste streepje op 1 stellen, zijn de overige breedtes 2, 3 en 4. De breedte van elk geheel symbool is 11.
Omdat moeilijk op wit geëindigd kan worden wordt het "stop"-symbool gevolgd door een extra zwarte streep met breedte 2.
Een barcode bestaat uit achtereenvolgens: een startsymbool, symbolen voor de gecodeerde gegevens, een controlesymbool en het stopsymbool.
Er zijn 107 verschillende symbolen gedefinieerd, waaronder drie verschillende startsymbolen, die elk een verschillende tekenset definiëren, en het stopsymbool.
Bij elk symbool, behalve het stopsymbool, hoort ook een getalswaarde die gebruikt wordt bij het berekenen van het controlesymbool. De getalswaarde van het controlesymbool wordt berekend door 1 x de getalswaarde van het startsymbool, 1 x de getalswaarde van het eerste gegevenssymbool, 2 x die van het tweede gegevenssymbool, 3 x die van het derde gegevenssymbool, en zo voort, bij elkaar op te tellen, en van het totaal de rest te nemen bij deling door 103.
Om een bepaald aantal gegevenssymbolen te coderen zijn er dus drie extra symbolen nodig (start, controle en stop), en de totale breedte van een streepjescode, uitgedrukt in de breedte van het dunste streepje, is dus: (aantal symbolen + 3) x 11 + 2.
Het is van belang om ervoor te zorgen dat bij het afdrukken de streepjes ook inderdaad de juiste breedteverhoudingen hebben. Door schaling is dit niet altijd het geval. Om dit te voorkomen dient men de lengte van de totale streepjescode te berekenen en te vermenigvuldigen met een geschikt geheel aantal pixels om een afbeelding van de gewenste grootte te verkrijgen.
Externe links
- (en) Specificatie (gearchiveerd op archive.org)