50904 / PythonYmparisto

Esimerkkejä Python-ympäristön asetuksista
0 stars 0 forks source link

Viivakoodeille oma luokka #23

Open 50904 opened 1 month ago

50904 commented 1 month ago

viivakoodeja varten voisi luoda oman luokan, jossa olisi metodit erilaisten viivakoodien luomiseen. 128B viivakoodille voisi tehdä vielä common-variantin lisäksi uncommon ja barcodesoft-versiot Myös 3of9-koodille voisi tehdä työkalun

Lisätietoja 3/9 koodista: https://en.wikipedia.org/wiki/Code_39

Google Fonts -latauslinkki: https://fonts.google.com/specimen/Libre+Barcode+39+Text

Tehdään vielä tarvittavat testit, joilla varmistetaan, että koodi toimii.

50904 commented 1 month ago
Code128B:ssä Merkki Common Uncommon Barcodesoft
Aloitus (start) 204 209 249
Loppu (stop) 206 211 251

Merkit, joiden 8 tai 16 bittinen koodi on yli 127 ovat mahdollisia. Common-variantissa merkit 195- 202 käytössä. Varmistussummassa arvo on koodi-100. Uncommon-variantissa 200 - 207 käytössä, varmistussummassa arvo on koodi - 105 ja barcodesoft-variantissa 240 - 247, varmistussumassa arvo on koodi - 145.

50904 commented 1 month ago

Eli: Code 128 B common: sallitut merkit ovat 32 - 126 (vähennetään 32) ja 195 - 202 (vähennetään 100)

Code 128 B uncommon: sallitut merkit ovat 32 - 126 (vähennetään 32) ja 200 - 207 (vähennetään 105)

Code 128 B barcodesoft: sallitut merkit ovat 32 - 126 (vähennetään 32) ja 240 - 247 (vähennetään 145)

Lisäksi common: välilyönti 32 tai  194 tai Ï, uncommon: Ô 212, barcodesoft ü 252. Näiden arvo varmistussumman laskennassa on aina 0.

Meidän sovelluksessa tarkoitus on valita, mikä kolmesta eri variantista tehdään, Koodin pitäisi varoittaa siitä, että tekstissä on merkkejä, joita valittu viivakoodityyppi ei tue.