เครื่องอ่านบาร์โค้ด 2D สำหรับ .NET
บทนําใน 2D Barcode Reader สําหรับ .NET
เครื่องอ่านบาร์โค้ด 2D สําหรับ .NET เป็นปลั๊กอินที่ช่วยให้ผู้พัฒนาสามารถอ่านรหัสบอร์ด 3D จากภาพ คู่มือนี้จะให้รายละเอียดเกี่ยวกับคุณสมบัติที่มีอยู่และอธิบายวิธีการดําเนินการงานทั่วไปโดยใช้ตัวอย่างร่องใน .Net
ประเภทบาร์โค้ดที่สนับสนุน
เครื่องอ่านบาร์โค้ด 2D สําหรับ .NET สนับสนุนประเภทบอร์ด 2d ต่อไปนี้:
- รหัส QR
- Matrix ข้อมูล
- PDF417
- ชาวเอเชีย
อ่านบาร์โค้ดจากภาพ
เพื่ออ่านรหัสบาร์จากภาพคุณสามารถใช้ BarCodeReader
คลาส นี่เป็นตัวอย่างของวิธีการทําเช่นนี้ใน C#:
using (BarCodeReader reader = new BarCodeReader("image.png"))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("Code Text: " + result.CodeText);
Console.WriteLine("Symbology: " + result.CodeType);
}
}
การปรับแต่งกระบวนการอ่าน
คุณสามารถปรับแต่งกระบวนการอ่านโดยการตั้งค่าตัวเลือกต่างๆเช่นคุณภาพภาพและอื่น ๆ นี่คือตัวอย่างวิธีการทําเช่นนี้ใน C#:
using (BarCodeReader reader = new BarCodeReader("image.png"))
{
reader.QualitySettings = QualitySettings.HighQuality;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("Code Text: " + result.CodeText);
Console.WriteLine("Symbology: " + result.CodeType);
}
}
การจัดการข้อผิดพลาดและการยกเว้น
The 2D Barcode Reader for .NET throws exceptions when errors occur during the reading process. คุณสามารถจัดการข้อผิดพลาดเหล่านี้โดยใช้บล็อก try-catch นี่คือตัวอย่างของวิธีการทําเช่นนี้ใน C#:
try
{
using (BarCodeReader reader = new BarCodeReader("image.png"))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("Code Text: " + result.CodeText);
Console.WriteLine("Symbology: " + result.CodeType);
}
}
}
catch (BarCodeRecognitionException ex)
{
Console.WriteLine("Error: " + ex.Message);
}
การปฏิบัติที่ดีที่สุดและการปรับปรุงประสิทธิภาพ
เพื่อเพิ่มประสิทธิภาพแนะนําให้ใช้ภาพที่มีคุณภาพสูงและตั้งค่า QualitySettings
คุณสมบัติสําหรับ HighPerformance
นอกจากนี้คุณยังสามารถปรับปรุงประสิทธิภาพโดยใช้การประมวลผลหลายเสี่ยงหรือคู่มือ นี่คือตัวอย่างของวิธีการทําเช่นนี้ใน C#:
BarCodeReader.ProcessorSettings.UseAllCores = true;
Parallel.ForEach(Files.GetFiles("images"), file =>
{
using (BarCodeReader reader = new BarCodeReader(file))
{
reader.QualitySettings = QualitySettings.HighPerformance;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("Code Text: " + result.CodeText);
Console.WriteLine("Symbology: " + result.CodeType);
}
}
});