Baca Kode Batang dari Gambar di C#

Apakah Anda mencari cara untuk membaca kode batang atau kode QR dari gambar secara terprogram? Jika Anda seorang pengembang, dan Anda perlu membuat aplikasi pembaca kode batang sendiri? Anda datang ke tempat yang tepat. Barcode sangat penting untuk pelacakan inventaris dan pengiriman produk yang akurat dari manufaktur ke titik penjualan. Kita dapat dengan mudah mendeteksi, mengenali, dan membaca berbagai jenis barcode dan kode QR di aplikasi .NET. Pada artikel ini, kami akan menunjukkan cara membaca kode batang dari gambar di C# dengan mengikuti beberapa langkah sederhana. Anda dapat menggunakan artikel ini sebagai panduan langkah demi langkah untuk mengembangkan aplikasi pembaca kode batang atau pemindai.

Pertama, kita akan melihat C# Barcode Reader API untuk membaca barcode yang tersedia di gambar masukan. Selanjutnya, kita akan membahas langkah-langkah cara mendeteksi, mengenali, dan mengekstrak data kode batang dari gambar. Anda akan menemukan langkah-langkah terperinci dan cuplikan kode. Terakhir, kami akan memberikan tautan yang berguna untuk penyempurnaan lebih lanjut. Jadi mari kita mulai!

Topik-topik berikut akan dibahas dalam artikel ini:

  1. C# API untuk Membaca Kode Batang dari Gambar
  2. Langkah-Langkah Membaca Barcode dari Gambar
  3. Baca Barcode dari Bitmap
  4. Baca Barcode dari Gambar menggunakan Stream
  5. Cara Membaca Barcode Jenis Tertentu
  6. Baca Kode Batang dari Berbagai Jenis dari Gambar
  7. Deteksi dan Baca Set Simbologi yang Ditentukan Sebelumnya
  8. Deteksi dan Baca Banyak Kode Batang dari Gambar
  9. Dapatkan Koordinat X dan Y dari Barcode
  10. Baca Barcode Dari Wilayah Gambar Tertentu
  11. Baca Barcode Dari Berbagai Wilayah Gambar

C# API untuk Membaca Barcode dari Gambar

Untuk membaca barcode dari gambar, kita akan menggunakan Aspose.BarCode for .NET API. API memungkinkan pembuatan, pemindaian, dan pembacaan berbagai simbologi barcode. Ini memungkinkan rendering gambar barcode dalam format JPEG, TIFF, PNG, BMP, dan GIF.

API menyediakan kelas BarCodeReader yang memungkinkan pengenalan lebih dari 60 jenis kode batang yang berbeda dari gambar yang diberikan. Langkah pertama dalam mendeteksi barcode adalah menentukan sumber gambar dengan barcode. Ini bisa berupa file, objek bitmap, atau aliran. Kemudian perlu menentukan simbologi target dalam parameter DecodeType. Kita dapat melihat semua jenis simbol yang didukung dengan menentukan DecodeType.AllSupportedTypes. Metode ReadBarCodes() kelas ini mengembalikan larik kode batang yang dikenali. Kelas BarCodeResult API menyimpan data kode batang yang dikenali seperti jenis kode batang, teks kode, wilayah, dan parameter lainnya.

API juga memungkinkan menentukan wilayah gambar yang harus dibaca oleh pembaca kode batang. Ini dapat dilakukan dengan menggunakan objek .NET Rectangle dan memungkinkan menghindari kebutuhan untuk menemukan kode batang di area gambar yang tidak berisi kode batang secara default.

Harap unduh DLL API atau instal menggunakan NuGet.

PM> Install-Package Aspose.BarCode 

Baca Kode Batang dari Gambar menggunakan C#

Kita dapat dengan mudah membaca kode batang dari gambar dengan mengikuti langkah-langkah berikut:

  1. Pertama, muat gambar menggunakan kelas BarCodeReader.
  2. Panggil metode readBarCodes() dan dapatkan hasil pengenalan di objek kelas BarCodeResult.
  3. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang dari gambar di C#.

// Contoh kode ini menunjukkan cara membaca kode batang dari file gambar.
// Inisialisasi pembaca kode batang
BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\Sample.png");

// Baca kode batang dan tampilkan hasilnya
foreach(BarCodeResult result in reader.ReadBarCodes()) 
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
}
Baca Barcode dari Gambar.

Baca kode batang dari gambar di C#.

Baca Kode Batang dari Bitmap di C#

Kita dapat dengan mudah membaca kode batang dari gambar dengan mengikuti langkah-langkah berikut:

  1. Pertama, muat gambar menggunakan kelas Bitmap.
  2. Selanjutnya, buat instance kelas BarCodeReader dengan objek Bitmap.
  3. Panggil metode ReadBarCodes() dan dapatkan hasil pengenalan di objek kelas BarCodeResult.
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang dari bitmap di C#.

// Contoh kode ini menunjukkan cara membaca barcode dari bitmap.
// Muat gambar dalam Bitmap
Bitmap bmp = new Bitmap("C:\\Files\\BarCode\\Code128.jpg");

// Inisialisasi pembaca Barcode
BarCodeReader reader = new BarCodeReader(bmp);

// Baca semua barcode di area yang disediakan
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
}
Baca Kode Batang dari Gambar Bitmap di C#.

Baca kode batang dari Bitmap di C#.

Baca Barcode dari Gambar menggunakan Stream di C#

Kami juga dapat memuat gambar kode batang menggunakan aliran file dan membaca kode batang dengan mengikuti langkah-langkah di bawah ini:

  1. Pertama, muat gambar menggunakan kelas FileStream.
  2. Selanjutnya, buat instance kelas BarCodeReader dengan objek aliran.
  3. Panggil metode ReadBarCodes() dan dapatkan hasil pengenalan di objek kelas BarCodeResult.
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca barcode dari gambar menggunakan Stream di C#.

// Contoh kode ini menunjukkan cara membaca kode batang dari gambar menggunakan aliran file.
// Muat gambar
Stream stream = new FileStream("C:\\Files\\BarCode\\MultipleBarcodes.jpeg", FileMode.Open, FileAccess.Read);

// Inisialisasi pembaca Barcode
BarCodeReader reader = new BarCodeReader(stream);

// Baca semua barcode di area yang disediakan
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
}

Baca Barcode Tipe Tertentu dari Gambar di C#

Direkomendasikan untuk memilih simbologi barcode target yang akan dipertimbangkan untuk pengenalan untuk meminimalkan jumlah waktu yang dibutuhkan untuk penyelesaian pengenalan dan menghindari upaya untuk mengenali barcode usang.

Kami dapat menentukan jenis barcode target dan membaca barcode dari gambar dengan mengikuti langkah-langkah berikut:

  1. Pertama, muat gambar menggunakan kelas BarCodeReader.
  2. Selanjutnya, setel jenis dekode kode batang, seperti Code39Standard.
  3. Setelah itu, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang dari jenis tertentu dari gambar menggunakan C#.

// Contoh kode ini menunjukkan cara membaca kode batang dari jenis dekode tertentu dari suatu gambar.
// Inisialisasi pembaca kode batang
BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\Code39Standard.jpg", DecodeType.Code39Standard);

// Baca barcode tipe Code39Extended
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
}
Kenali Barcode dari Jenis Tertentu dari Gambar

Kenali Kode Batang Jenis Tertentu dari Gambar di C#.

Baca Kode Batang dari Berbagai Jenis dari Gambar di C#

Kami juga dapat menentukan beberapa jenis kode batang dengan mengikuti langkah-langkah berikut:

  1. Pertama, muat gambar menggunakan kelas BarCodeReader.
  2. Selanjutnya, setel jenis dekode kode batang menggunakan metode SetBarCodeReadType().
  3. Setelah itu, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang dari berbagai jenis dari gambar menggunakan C#.

// Contoh kode ini menunjukkan cara membaca kode batang dari berbagai jenis dekode dari sebuah gambar.
// Inisialisasi pembaca kode batang
BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\MultipleBarcodes.png");
reader.SetBarCodeReadType(DecodeType.DataMatrix, DecodeType.QR, DecodeType.Code39Extended);

// Baca barcode
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
    Console.Out.WriteLine("-------------------------");
}
Baca Barcode dari Berbagai Jenis dari Gambar di C#

Baca Barcode dari Berbagai Jenis dari Gambar di C#

Kami juga dapat menentukan beberapa jenis dekode dalam konstruktor kelas BarCodeReader seperti yang ditunjukkan di bawah ini:

BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\Code39Standard.jpg", DecodeType.DataMatrix, DecodeType.QR, DecodeType.Code39Extended);

Baca Kumpulan Jenis Kode Batang yang Telah Ditentukan dari Gambar di C#

Kita dapat membaca sekumpulan simbol yang telah ditentukan sebelumnya untuk pengenalan yang ditentukan dalam kelas DecodeTypes. Kami dapat mengatur salah satu dari set standar berikut:

  • AllSupportedTypes - semua jenis kode batang yang didukung
  • Types1D - semua simbol 1D yang didukung
  • Types2D - semua simbol 2D yang didukung
  • PostalTypes - semua simbologi pos yang didukung yang terutama digunakan oleh layanan pos
  • MostCommonTypes - satu set standar kode batang yang paling banyak digunakan ditentukan

Kami dapat menentukan set yang telah ditentukan sebelumnya dengan mengikuti langkah-langkah yang diberikan di bawah ini:

  1. Pertama, Pertama, muat gambar menggunakan kelas BarCodeReader.
  2. Selanjutnya, setel jenis dekode kode batang di konstruktor BarCodeReader atau metode SetBarCodeReadType, seperti DecodeType.Types2D.
  3. Setelah itu, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang menggunakan kumpulan simbol yang telah ditentukan sebelumnya di C#.

// Contoh kode ini mendemonstrasikan cara membaca barcode menggunakan kumpulan simbol yang telah ditentukan sebelumnya.
// Inisialisasi pembaca kode batang
BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\MultipleBarcodes.png", DecodeType.Types1D);

// Baca kode batang dan tampilkan hasilnya
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
    Console.Out.WriteLine("-------------------------");
}
Baca Kumpulan Jenis Kode Batang yang Telah Ditentukan dari Gambar di C#

Baca Kumpulan Jenis Kode Batang yang Telah Ditentukan dari Gambar di C#

Baca Banyak Kode Batang dari Gambar di C#

Kami juga dapat membaca semua kode batang yang tersedia dari suatu gambar dengan mengikuti langkah-langkah di bawah ini:

  1. Pertama, muat gambar menggunakan kelas BarCodeReader.
  2. Selanjutnya, tetapkan jenis dekode kode batang sebagai ALLSUPPORTEDTYPES.
  3. Setelah itu, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca banyak kode batang dari gambar menggunakan C#.

// Contoh kode ini menunjukkan cara membaca kode batang beberapa kode batang dari sebuah gambar.
// Inisialisasi pembaca kode batang
BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\MultipleBarcodes.png", DecodeType.AllSupportedTypes);

// Baca semua jenis barcode yang tersedia pada gambar input
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
    Console.Out.WriteLine("-------------------------");
}
Baca Banyak Kode Batang dari Gambar.

Baca beberapa kode batang dari sebuah gambar.

Dapatkan Koordinat X dan Y dari Barcode menggunakan C#

Kita dapat membaca koordinat X dan Y dari barcode yang terdeteksi dari sebuah gambar dengan mengikuti langkah-langkah di bawah ini:

  1. Pertama, muat gambar menggunakan kelas BarCodeReader.
  2. Selanjutnya, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  3. Kemudian, ulangi hasil dan periksa apakah Wilayah bukan nol.
  4. Setelah itu, dapatkan array Points yang membatasi wilayah barcode menggunakan Points.
  5. Terakhir, tunjukkan titik X dan Y pada kode batang.

Contoh kode berikut menunjukkan cara mendapatkan titik koordinat X dan Y dari kode batang dari gambar menggunakan C#.

// Contoh kode ini menunjukkan cara membaca kode wilayah X & Y dari sebuah gambar.
// Inisialisasi pembaca kode batang
BarCodeReader reader = new BarCodeReader("C:\\Files\\BarCode\\Code39Standard.jpg", DecodeType.AllSupportedTypes);

// Baca kode batang
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    if (result.Region != null)
    {
        // Menampilkan koordinat x dan y dari semua barcode yang terdeteksi
        Point[] point = result.Region.Points;
        Console.Out.WriteLine("Top left coordinates: X = " + point[0].X + ", Y = " + point[0].Y);
        Console.Out.WriteLine("Bottom left coordinates: X = " + point[1].X + ", Y = " + point[1].Y);
        Console.Out.WriteLine("Bottom right coordinates: X = " + point[2].X + ", Y = " + point[2].Y);
        Console.Out.WriteLine("Top right coordinates: X = " + point[3].X + ", Y = " + point[3].Y);
    }
}
Dapatkan Koordinat X dan Y dari Barcode

Dapatkan koordinat X dan Y dari kode batang dari gambar.

Baca Kode Batang Dari Wilayah Gambar Tertentu di C#

Kita dapat membaca kode batang dari wilayah tertentu atau area gambar dengan mengikuti langkah-langkah di bawah ini:

  1. Pertama, baca data buffer dari file gambar menggunakan metode Bitmap.
  2. Selanjutnya, buat instance dari kelas BarCodeReader. Dibutuhkan gambar, area persegi panjang, dan Jenis Dekode sebagai argumen.
  3. Setelah itu, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  4. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang dari wilayah tertentu pada gambar menggunakan C#.

// Contoh kode ini menunjukkan cara membaca kode batang dari wilayah tertentu pada suatu gambar.
// Muat gambar
Bitmap img = new Bitmap("C:\\Files\\BarCode\\MultipleBarcodes.jpeg");

// Buat instance kelas BarCodeReader
// dan tentukan area untuk mencari barcode
BarCodeReader reader = new BarCodeReader(img, new Rectangle(0, 0, 400, 200));

// Baca semua barcode di area yang disediakan
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
}
Baca Kode Batang Dari Wilayah Gambar Tertentu.

Baca kode batang dari wilayah tertentu dari suatu gambar di C#.

Baca Kode Batang Dari Beberapa Wilayah Gambar di C#

Kami juga dapat membaca kode batang dari berbagai wilayah gambar dengan mengikuti langkah-langkah di bawah ini:

  1. Pertama, muat gambar menggunakan kelas Bitmap.
  2. Selanjutnya, tentukan persegi panjang menggunakan kelas Rectangle.
  3. Kemudian, buat instance dari kelas BarCodeReader.
  4. Sementara itu, panggil SetBarCodeImage() dengan objek gambar, dan persegi panjang sebagai argumen.
  5. Secara opsional, setel jenis pembacaan kode batang menggunakan metode SetBarCodeReadType().
  6. Setelah itu, dapatkan hasil pengenalan pada objek kelas BarCodeResult menggunakan metode ReadBarCodes().
  7. Terakhir, ulangi hasilnya dan tunjukkan jenis dan teks kode batang.

Contoh kode berikut menunjukkan cara membaca kode batang dari berbagai wilayah gambar menggunakan C#.

// Contoh kode ini menunjukkan cara membaca kode batang dari wilayah tertentu pada suatu gambar.
// Muat gambar dalam Bitmap
Bitmap bmp = new Bitmap("C:\\Files\\BarCode\\MultipleBarcodes.png");

// Persegi panjang kode batang 2D di gambar sumber
Rectangle rect2D = new Rectangle(0, 0, 400, 200);

// Persegi panjang kode batang Code128 pada gambar sumber
Rectangle rectCode128 = new Rectangle(450, 100, 600, 180);

// Inisialisasi pembaca Barcode
BarCodeReader reader = new BarCodeReader();
reader.SetBarCodeImage(bmp, new Rectangle[] { rect2D, rectCode128 });
reader.SetBarCodeReadType(DecodeType.AllSupportedTypes);

// Baca semua barcode di area yang disediakan
foreach (BarCodeResult result in reader.ReadBarCodes())
{
    Console.Out.WriteLine("CodeText: " + result.CodeText);
    Console.Out.WriteLine("Symbology type: " + result.CodeType);
    Console.Out.WriteLine("-------------------------");
}
Baca Barcode Dari Berbagai Wilayah Gambar.

Baca kode batang dari Beberapa wilayah gambar di C#.

Dapatkan Lisensi Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk mencoba perpustakaan tanpa batasan evaluasi.

Kesimpulan

Dalam artikel ini, kita telah mempelajari cara:

  • Muat file gambar kode batang;
  • Baca gambar sebagai bitmap atau menggunakan aliran file;
  • mengenali kode batang dari berbagai jenis dari suatu gambar;
  • membaca koordinat barcode;
  • mendeteksi dan membaca banyak kode batang dari satu gambar;
  • mendeteksi dan membaca barcode dari area tertentu dari suatu gambar.

Selain membaca kode batang dari gambar di C#, Anda dapat mempelajari lebih lanjut tentang Aspose.BarCode untuk .NET API menggunakan dokumentasi. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di forum dukungan gratis.

Lihat juga