Hei, rupesin huvikseni kokeilemaan viivakoodinlukua web-kameralla.
Käyttämäni kamera on aika vanha, mutta toimii silti hyvin. Löysin kolme ohjelmaa tähän tarkoitukseen:
- ZBar Bar Code Reader
- Free Barcode Reader
- bcWebCam
Ainut, jota en saanut ollenkaan toimimaan, oli bcWebCam, johtuikohan sitten siitä, että ei tue näitä Suomen E13(?) viivakoodeja.
Kyseisessä ohjelmassa oli kuitenkin ominaisuus, jota muista ei löydy. Haluaisin nimittäin, että voisin mennä jollekin verkkosivulle, napsauttaa kursorilla johonkin kenttään ja sitten kun lukisin viivakoodin ohjelmalla, niin viivakoodin numerosarja tulostuisi kyseiseen tekstikenttään. Tällä hetkellä xbar vain näyttää tulostetun numerosarjan komentorivillä.
Tuosta ohjelmasta löytyy kai jotain api-rajapintoja, mutta ei löydy oikein kokemusta niiden käytöstä.
Osaisikohan kukaan sanoa, pystyisikö tuohon ohjelmaan koodaamaan (ks. tämä) jonkin työkalun, joka liittäisi skannatun viivakoodin valittuun tekstikenttään?
Jos ohjelma tulostaa kätevästi komentoriville, helppo ratkaisu olisi tehdä komentoriviohjelma, joka vastaavasti lukee komentoriviltä merkkejä ja simuloi niitä vastaavia näppäimenpainalluksia. Tämän jälkeen ohjelmat voisi ajaa peräkkäin niin, että ensimmäisen tuloste annettaisiin toiselle syötteeksi:
viivakoodinlukija.exe | nappaimenpainaja.exe
Näppäinten painelua voi simuloida nykyisissä Windowsin versioissa funktiolla SendInput tai Javassa luokalla Robot.
Itsellä ei oikein löydy minkäänlaista kokemusta, muuta kuin web-ohjelmointikielillä.
Tuolla zbar-ohjelmalla näkyy olevan "oma" komentorivi, jolla pyynnöt sitten suoritetaan. Tuo on siis polku, johon käynnistä-valikon pikakuvake viittaa.
C:\WINDOWS\system32\cmd.exe /k ""C:\Program Files\ZBar\zbarvars.bat""
bat-tiedosto sisältää seuraavaa:
@rem Add the ZBar installation directory to the path @rem so programs may be run from the command prompt @set PATH=%PATH%;C:\Program Files\ZBar\bin @cd /D C:\Program Files\ZBar @echo For basic command instructions type: @echo zbarcam --help @echo zbarimg --help @echo Try running: @echo zbarimg -d examples\barcode.png
Voisikohan tuota bat-tiedostoa käyttää suoraan hyödyksi?
Tämähän kuulostaa mielenkiintoiselta.. pitää itsekkin alkaa kokeilemaan.
Siinä jollekin taas mahtava idea iPhonen appsia varten.. muiden turhakkeiden joukkoon.
Tämä voisi kiinnostaa aihetta seuraavia. http://code.google.com/p/zxing/
JussiR kirjoitti:
Siinä jollekin taas mahtava idea iPhonen appsia varten.. muiden turhakkeiden joukkoon.
Niinkuin sanonta menee, "There's an app for that". Eli löytyy jo.
Mm. http://itunes.apple.com/fi/app/zbar-barcode-reader/id344957305?mt=8
Lukee muuten hienosti kaikki EAN-koodit ja jopa Itellan pakettikoodit (Code 128). Jostain syystä pankkiviivakoodin lukeminen ei onnistunut tuolla, vaikka sekin on Code128:aa. Olisiko sitten liian pitkä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.