Teks & alat sehari-hari · Perangkat QR & Kode Batang
Code 128 kumpulan kode A, B, dan C: mengapa angka membuat kode batang menjadi lebih pendek
· Cara kerjanya
pengkodean pencetakan alur kerja pengembang
Menjelaskan tiga kumpulan kode Code 128, bagaimana kumpulan kode C mengemas dua digit per simbol, dan mengapa label numerik saja bisa terlihat lebih sempit dibandingkan label campuran.
Kode batang yang tidak sesuai dengan label — bagaimana pilihan karakter, bukan hanya ukuran font, mengontrol lebar simbol Code 128
Lebar Code 128 dikontrol oleh urutan simbol yang dipancarkan, bukan dengan mengecilkan font keterangan. Pengujian ToolAcre menunjukkan bahwa jaringan angka dikodekan lebih kompak dibandingkan jaringan huruf berukuran sama karena pembuat enkode otomatis dapat menggunakan digit berpasangan.
Perancang label dapat mengukur konsekuensinya secara langsung karena `generateCode128` mengembalikan `moduleCount` dengan pola biner. Dua string dengan panjang karakter yang sama dapat memiliki jumlah modul yang berbeda ketika yang satu mengizinkan digit berpasangan dan yang lainnya memerlukan karakter individual atau perubahan set. Lebar yang diekspor juga mencakup zona tenang tetap, jadi menekan teks atau mengubah font tidak akan mengurangi bilah itu sendiri.
Kumpulan kode A, B, dan C dalam satu tabel — karakter kontrol dan huruf kapital, huruf besar dan kecil, serta pasangan digit
Tiga kumpulan kode mencakup bagian berbeda dari repertoar Code 128: A berguna untuk huruf kapital dan kontrol, B mencakup teks huruf besar-kecil yang dapat dicetak, dan C mewakili pasangan digit desimal. ToolAcre tidak meminta pengguna untuk memilih satu set secara manual.
ToolAcre sengaja menyembunyikan pemilihan set manual karena encoder otomatis memiliki input lengkap dan dapat memilih transisi secara konsisten. Itu menghindari UI di mana pengguna memaksa set C untuk huruf atau kesalahan set berorientasi kontrol untuk teks biasa. Batasannya sama pentingnya: pemilihan otomatis mengoptimalkan string ASCII yang valid, namun tidak mentransliterasi huruf beraksen atau memperluas Code 128 melampaui titik kode nol hingga 127.
Mengapa kumpulan kode C membagi dua lebar digit berjalan — satu simbol per dua digit, dan apa yang terjadi dengan jumlah digit ganjil
Himpunan C mengubah setiap pasangan digit lengkap menjadi satu simbol data, sehingga proses numerik dengan panjang genap memerlukan lebih sedikit simbol. Dengan hitungan ganjil, pembuat enkode harus meninggalkan atau menunda set C untuk digit yang tidak cocok, sehingga hasil pastinya bergantung pada segmentasi otomatis.
Proses ganjil menunjukkan batas pintasan “dua digit per simbol”. Dalam `12345`, digit terakhir tidak dapat membentuk pasangan set-C, sehingga encoder harus memperhitungkannya melalui strategi lain dan overhead transisi apa pun. Mengawali proses dengan `A` akan menambahkan karakter lain yang tidak berpasangan. Hasilkan kedua nilai daripada memperkirakan lebar dari enam karakter yang ditampilkan, karena keputusan segmentasi diwakili dalam modul yang dipancarkan, bukan keterangannya.
Peralihan kode batang tengah — bagaimana karakter pergeseran dan perubahan kode memungkinkan satu kumpulan kode batang tercampur, dengan mengorbankan simbol tambahan
Pengidentifikasi campuran dapat beralih antar set ketika simbol yang disimpan lebih besar daripada overhead sakelar. Pembuat enkode CODE128_AUTO membuat keputusan itu; aplikasi memeriksa keluaran daripada menjanjikan bahwa setiap pasangan digit yang terisolasi memicu transisi tertentu.
Simbol saklar memakan ruang, yang berarti pulau numerik pendek di dalam huruf mungkin tidak layak untuk dimasukkan ke set C. CODE128_AUTO memutuskan dari keseluruhan string, bukan dari aturan bahwa setiap dua digit memicu saklar. Hal ini juga menjelaskan mengapa memasukkan tanda baca ke dalam sebuah serial dapat memperluasnya dengan lebih dari satu simbol data: hal ini dapat membagi proses yang berguna dan menyebabkan transisi di sekitar interupsi.
Modul penghitungan — sebelas modul per simbol, tiga belas untuk pola berhenti, ditambah zona tenang, untuk memprediksi lebar cetakan
Simbol Code 128 biasa menempati sebelas modul, sedangkan pola berhenti lebih panjang, dan penyaji menambahkan sepuluh zona tenang bilah sempit di kedua sisi. Menghitung modul yang dipancarkan memprediksi lebar dengan lebih andal dibandingkan menghitung karakter masukan yang terlihat.
Perender mengubah setiap modul biner menjadi kelipatan piksel tetap dan menambahkan sepuluh zona tenang modul sempit di kedua sisi. Urutan perhentiannya adalah tiga belas modul sedangkan simbol biasa dimulai dalam kelompok sebelas modul. Fakta implementasi ini memungkinkan tata letak menggunakan jumlah modul yang dikembalikan untuk menghitung kandidat lebar piksel; mereka tidak menjamin cetakan fisik akan dipindai pada perangkat tertentu.
Contoh praktis - serial dua belas karakter yang sama dengan angka saja, kemudian dengan awalan huruf, membandingkan jumlah dan lebar simbol
Bandingkan 123456789012 dengan A12345678901 di generator. Masukan semua digit memberi generator enkode serangkaian pasangan yang berkesinambungan, sedangkan awalan memaksa urutan campuran; Pengujian ToolAcre menggunakan prinsip yang sama untuk memverifikasi bahwa data digit lebih sempit.
Gunakan pasangan terkontrol seperti `123456789012` dan `A12345678901`, pertahankan pengaturan ekspor yang sama dan bandingkan lebar viewBox SVG keduanya. Nilai kedua mungkin memerlukan set awal yang berbeda dan pengkodean campuran meskipun keduanya berisi dua belas karakter. Ini adalah bukti desain yang lebih baik daripada mengganti ukuran modul yang lebih kecil, yang mempertahankan hitungan namun membuat setiap bar lebih sulit untuk diselesaikan oleh printer dan pembaca.
Apa yang tidak tercakup dalam hal ini — resolusi printer, kualitas pita, dan aturan GS1 untuk kode batang ritel
Perbandingan tersebut tidak menjelaskan apa pun tentang kualitas pita, titik printer, atau aturan label GS1. Ini juga tidak mengubah ToolAcre menjadi layanan kode batang ritel: simbologi yang dikonfigurasi dan diterapkan adalah Code 128 untuk pengidentifikasi yang Anda kendalikan.
Titik printer, penyebaran tinta, dan perpindahan pita terjadi setelah ToolAcre menghasilkan geometri yang tepat. Aturan GS1 terjadi sebelumnya, dengan menentukan data dan kontrol yang akan dikodekan. Tidak ada masalah yang diselesaikan dengan pemilihan kumpulan kode otomatis. SVG yang ringkas secara teknis masih bisa berupa simbologi yang salah, cetakan yang kurang terselesaikan, atau pengidentifikasi yang tidak pernah didaftarkan oleh database penerima.
Kesimpulannya - desain label dengan digit yang berjalan sedapat mungkin, lalu buat kode batang di Perangkat QR & Kode Batang untuk memeriksa lebarnya
Rancang pengidentifikasi internal dengan digit yang berguna ketika kekompakan penting, namun tetap dapat dimengerti oleh orang yang harus mengetiknya. Hasilkan pola akhir sebelum meletakkan label, karena jumlah modul sebenarnya adalah lebar yang penting.
Kekompakan harus tetap berada di bawah operasi yang stabil. Kunci numerik yang lebih pendek dapat menyimpan modul, tetapi urutan yang buram dapat meningkatkan kesalahan transkripsi ketika label yang rusak harus dimasukkan secara manual. Pilih skema yang dapat digunakan oleh staf dan perangkat lunak, hasilkan ekstrem yang representatif sebelum memperbaiki templat label, dan pertahankan zona tenang alih-alih menggunakan kembali ruang kosong untuk teks di dekatnya.