Siapa tak mengenal barcode yang begitu populer sebagai tanda pengenal barang-barang dalam sistem SKU (stock keeping unit). Secara umum ada dua jenis barcode, yang pertama barcode satu dimensi. Barcode ini terdiri dari garis-garis yang berwarna putih dan hitam, warna putih untuk nilai 0 dan warna hitam untuk nilai 1, dan yang kedua yaitu barcode dua dimensi. Barcode ini sudah tidak berupa garis-garis lagi akan tetapi seperti gambar sehingga informasi yang tersimpan di dalamnya akan lebih besar.
Khusus untuk barcode yang sering digunakan yaitu dengan tipe EAN 13 (Europe Article Number). Tipe EAN 13 sering kita jumpai untuk kode suatu barang di supermarket. Tipe EAN 13 dipakai untuk pengkodean barang-barang atau produk yang dikomersialkan, tipe ini sendiri terdiri dari 13 digit dan masing-masing digit memiliki arti. Terdapat dua buah metode yang sering digunakan yaitu EAN-13 dan EAN-8. Barcode EAN-13 dibagi menjadi 4 area, yaitu nomor sistem, kode manufaktur, kode produk dan digit cek
- Nomor sistem: Nomor sistem terdiri dari 2 digit yang menyatakan otoritas penomoran yang memberikan kode manufaktur.
- Kode manufaktur: Kode manufaktur merupakan kode yang unik yang diberikan ke setiap manufaktur dengan otoritas nomor yang diidentifikasi dengan kode nomor sistem. Semua produk yang dihasilkan oleh sebuah perusahaan akan memakai kode manufaktur yang sama.
- Kode produk: Kode produk merupakan kode yang diberikan oleh manufaktur pada setiap produk yang dihasilkannya.
- Digit cek: Digit cek merupakan digit tambahan yang digunakan untuk memeriksa apakah barcode telah dibaca secara benar.
Library untuk membaca Barcode
Library yang paling banyak digunakan dan open source untuk barcode reader yaitu zxing https://github.com/zxing/zxing . Biasa penulis gunakan untuk beberapa project karena mudah dan lengkap dan tersedia untuk banyak bahasa umumnya, tidak hanya java saja. Kalau kalian menggunakan python yaitu https://github.com/ChenjieXu/pyzxing tapi saat ini emang agak susah cara set path nya