Pada artikel ini, saya akan mendemonstrasikan cara membuat barcode secara terprogram menggunakan C++. Anda juga akan mempelajari cara mengimplementasikan pemindai atau pembaca kode batang dalam aplikasi C++ Anda.

menghasilkan kode batang dalam C++

Barcode digunakan untuk merepresentasikan data secara visual dalam bentuk yang dapat dibaca mesin. Teknologi tersebut terbukti bermanfaat terutama dalam sistem pembayaran otomatis yang digunakan di toko dan supermarket. Hampir setiap produk di pasaran saat ini memiliki kode batang di atasnya. Popularitas barcode yang meluas ini telah memperluas kasus penggunaannya di berbagai domain. Mengingat pentingnya barcode, beberapa tahun lalu, Aspose telah meluncurkan generator barcode dan API pembaca untuk berbagai platform. Artikel ini bertujuan untuk menunjukkan bagaimana mengimplementasikan generator dan pembaca barcode dalam aplikasi C++ untuk menghasilkan dan membaca barcode secara dinamis.

C++ Pembuat Kode Batang dan API Pembaca

Aspose.BarCode for C++ adalah API C++ yang kaya fitur untuk menghasilkan dan membaca banyak kode batang 1D dan 2D. Ini memungkinkan Anda menghasilkan, menyesuaikan, dan mengekspor kode batang ke gambar berkualitas tinggi. Anda dapat mengunduh file perpustakaan dari bagian Unduhan. Paket yang dapat diunduh juga berisi aplikasi demo C++ untuk Anda.

Berikut ini adalah daftar simbologi barcode yang dapat Anda hasilkan menggunakan Aspose.BarCode for C++:

  • Kode128
  • Standar Code39
  • Kode39 Diperpanjang
  • Standar Kode93
  • Kode93 Diperpanjang
  • Kode11
  • Codabar
  • BooklandEAN
  • EAN13
  • EAN8
  • EAN128
  • Interleaved2of5
  • Standard2of5
  • MSI
  • Postnet
  • Planet
  • UPCA
  • UPCE
  • EAN14(SCC14)
  • SSCC18
  • ITF14
  • suplemen kode batang
  • Pdf417
  • QR
  • Datamatrix
  • Matriks 2 dari 5
  • PZN (Number Pharmazentral, kode batang Pharmazentralnummer)
  • Kode Identitas Pos Jerman
  • Aztek
  • Pos Australia

Hasilkan Kode Batang menggunakan C++

Menghasilkan barcode menggunakan Aspose.BarCode dapat dicapai dalam beberapa baris kode. Berikut ini adalah langkah-langkah untuk melakukan operasi ini.

Contoh kode berikut menunjukkan cara membuat kode batang menggunakan C++.

const System::String codeText = u"1234567";
const System::String fileName = u"code39_barcode.jpg";
// Buat pembuat kode batang
System::SharedPtr<BarcodeGenerator> barcodeGenerator = System::MakeObject<BarcodeGenerator>(EncodeTypes::Code39Standard, codeText);
barcodeGenerator->get_Parameters()->set_Resolution(300);
// Hasilkan kode batang dan simpan sebagai gambar
barcodeGenerator->Save(fileName);

Berikut ini adalah barcode yang telah kami hasilkan menggunakan kode di atas.

Hasilkan Kode Batang 2D (QR atau lainnya) menggunakan C++

Pada contoh sebelumnya, kita telah membuat barcode satu dimensi. Sekarang mari kita buat barcode dua dimensi seperti kode QR. Berikut langkah-langkah membuat barcode QR.

Contoh kode berikut menunjukkan cara membuat kode batang QR menggunakan C++.

const System::String codeText = u"1234567";
const System::String fileName = u"QR_Code.jpg";
// Buat pembuat kode batang
System::SharedPtr<BarcodeGenerator> barcodeGenerator = System::MakeObject<BarcodeGenerator>(EncodeTypes::QR, codeText);
barcodeGenerator->get_Parameters()->set_Resolution(300);
// Hasilkan kode batang dan simpan sebagai gambar
barcodeGenerator->Save(fileName);

Kode QR berikut akan dihasilkan menggunakan kode di atas.

Hasilkan Kode Batang yang Disesuaikan menggunakan C++

Anda juga dapat menyesuaikan tampilan barcode. Misalnya, Anda dapat mengatur warna latar depan, warna latar belakang, ukuran, gaya batas, dll. Berikut ini adalah langkah-langkah untuk menyesuaikan kode batang menggunakan Aspose.BarCode for C++.

Contoh kode berikut menunjukkan cara membuat kode batang yang disesuaikan menggunakan C++.

System::SharedPtr<BarcodeGenerator> barcodeGenerator = [&] { auto tmp_0 = System::MakeObject<BarcodeGenerator>(EncodeTypes::Aztec, System::String(u"1234567890"));
// mengatur gaya broder
tmp_0->get_Parameters()->get_Border()->set_DashStyle(Aspose::BarCode::BorderDashStyle::Solid);
// mengatur lebar
tmp_0->get_Parameters()->get_Border()->get_Width()->set_Millimeters(1.0f);
// mengatur visibilitas perbatasan
tmp_0->get_Parameters()->get_Border()->set_Visible(true);
// mengatur warna latar belakang
tmp_0->get_Parameters()->set_BackColor(System::Drawing::Color::get_Black());
// mengatur warna batang barcode
tmp_0->get_Parameters()->get_Barcode()->set_ForeColor(System::Drawing::Color::get_Orange());
// mengatur warna batas
tmp_0->get_Parameters()->get_Border()->set_Color(System::Drawing::Color::get_Black());
// mengatur warna teks
tmp_0->get_Parameters()->get_Barcode()->get_CodeTextParameters()->set_Color(System::Drawing::Color::get_Orange());
// mengatur resolusi gambar
tmp_0->get_Parameters()->set_Resolution(400);
return tmp_0; }();	
 
barcodeGenerator->Save(System::String(u"custom_barcode.jpg"));

Berikut ini adalah kode batang Aztec khusus yang telah kami hasilkan.

Menghasilkan Barcode dengan Caption menggunakan C++

Kode batang juga dapat berisi keterangan di bawah atau di atas kode batang. Anda dapat mengatur teks keterangan serta visibilitasnya di gambar kode batang. Contoh kode berikut menunjukkan cara membuat kode batang dengan teks menggunakan C++.

System::SharedPtr<BarcodeGenerator> generator = [&] { auto tmp_0 = System::MakeObject<BarcodeGenerator>(EncodeTypes::Code39Standard, System::String(u"1234567890"));
// atur judul di atas
tmp_0->get_Parameters()->get_CaptionAbove()->set_Text(u"Caption Above");
// mengatur visibilitas
tmp_0->get_Parameters()->get_CaptionAbove()->set_Visible(true);
// atur judul di bawah ini
tmp_0->get_Parameters()->get_CaptionBelow()->set_Text(u"Caption Below");
// mengatur visibilitas
tmp_0->get_Parameters()->get_CaptionBelow()->set_Visible(true);
// mengatur resolusi
tmp_0->get_Parameters()->set_Resolution(300);
return tmp_0; }();
generator->Save(System::String(u"barcode_caption.jpg"));

Berikut ini adalah barcode dengan keterangan di atas dan di bawah.

Pindai dan Baca Kode Batang menggunakan C++

Sekarang mari kita lihat cara memindai dan membaca kode batang menggunakan Aspose.BarCode for C++. Berikut adalah langkah-langkah untuk menjalankan fitur ini.

  • Buat instance dari kelas BarCodeReader.
  • Inisialisasi instance BarCodeReader dengan file gambar kode batang dan simbologinya.
  • Gunakan metode BarCodeReader->Read() untuk mendapatkan kembali teks dan jenis kode batang.

Contoh kode berikut menunjukkan cara memindai dan membaca kode batang menggunakan C++.

// Buat instance kelas BarcodeGenerator 
System::SharedPtr<BarCodeReader> reader = System::MakeObject<BarCodeReader>(u"Code128.png", DecodeType::Code128);
while (reader->Read())
{
	// Tampilkan teks kode dan Jenis Simbologi
	System::Console::WriteLine(System::String(u"CodeText: ") + reader->GetCodeText());
	System::Console::Write(System::String(u"Symbology Type: ") + reader->GetCodeType());
}
reader->Close();

Baca Kode Batang dengan Banyak Simbol menggunakan C++

Sebagian besar waktu, sebuah gambar hanya berisi satu simbologi barcode. Namun, dalam kasus tertentu, gambar mungkin berisi kode batang dari beberapa simbol sekaligus. Dalam kasus tersebut, Anda dapat memberikan daftar simbologi kode batang untuk dipindai dan dibaca.

Contoh kode berikut menunjukkan cara memindai gambar yang memiliki banyak simbol kode batang menggunakan C++.

// Atur simbologi barcode
System::ArrayPtr<System::SharedPtr<BaseDecodeType>> objArray = System::MakeArray<System::SharedPtr<Aspose::BarCode::BarCodeRecognition::BaseDecodeType>>({ DecodeType::Code39Standard, DecodeType::Pdf417 });

// Inisialisasi metode BarCodeReader, Panggil Read() dalam satu lingkaran dan Tampilkan teks kode dan tipe simbologi
System::SharedPtr<BarCodeReader> reader = System::MakeObject<BarCodeReader>(u"RecognizingMultipleSymbologies.png", objArray);
while (reader->Read())
{
	System::Console::WriteLine(System::String(u"Codetext: ") + reader->GetCodeText());
	System::Console::WriteLine(System::String(u"Symbology type: ") + reader->GetCodeType());
}
reader->Close();

Kesimpulan

Pada artikel ini, Anda telah mempelajari cara membuat barcode dengan berbagai simbol menggunakan C++. Selain itu, prosedur pemindaian dan pembacaan barcode juga dibahas bersama dengan contoh kode C++. Anda dapat mempelajari lebih lanjut tentang API menggunakan dokumentasi.

Lihat juga