قارئ رمز الشريط ثنائي الأبعاد للNET
مقدمة في قارئ رمز الشريط ثنائي الأبعاد للNET
قارئ رمز الشريط ثنائي الأبعاد للNET هو مكون إضافي يتيح للمطورين قراءة رموز الشريط ثنائية الأبعاد من الصور. توفر هذه الدليل نظرة عامة على الميزات المتاحة ويشرح كيفية أداء المهام الشائعة باستخدام أمثلة الكود في الـ NET.
أنواع رموز الشريط المدعومة
يدعم قارئ رمز الشريط ثنائي الأبعاد للNET النصوص التالية لأنواع رموز الشريط ثنائية الأبعاد:
- QR Code
- Data Matrix
- PDF417
- Aztec
قراءة رموز الشريط من الصور
لقراءة رمز الشريط من صورة ، يمكنك استخدام فئة BarCodeReader
. هنا مثال على كيفية القيام بذلك في سي #:
using (BarCodeReader reader = new BarCodeReader("image.png"))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("نص الرمز: " + result.CodeText);
Console.WriteLine("مجموعة الرموز: " + result.CodeType);
}
}
تخصيص عملية القراءة
يمكنك تخصيص عملية القراءة عن طريق تعيين خيارات مختلفة ، مثل جودة الصورة وغيرها. هنا مثال على كيفية القيام بذلك في سي #:
using (BarCodeReader reader = new BarCodeReader("image.png"))
{
reader.QualitySettings = QualitySettings.HighQuality;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("نص الرمز: " + result.CodeText);
Console.WriteLine("مجموعة الرموز: " + result.CodeType);
}
}
التعامل مع الأخطاء والاستثناءات
يقذف قارئ رمز الشريط ثنائي الأبعاد للNET استثناءات عند حدوث أخطاء أثناء عملية القراءة. يمكنك التعامل مع هذه الاستثناءات باستخدام كتلة try-catch. هنا مثال على كيفية القيام بذلك في سي #:
try
{
using (BarCodeReader reader = new BarCodeReader("image.png"))
{
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("نص الرمز: " + result.CodeText);
Console.WriteLine("مجموعة الرموز: " + result.CodeType);
}
}
}
catch (BarCodeRecognitionException ex)
{
Console.WriteLine("خطأ: " + ex.Message);
}
أفضل الممارسات وتحسين الأداء
من أجل تحسين الأداء ، يُوصى باستخدام صور عالية الجودة وتعيين خاصية QualitySettings
إلى HighPerformance
. بالإضافة إلى ذلك ، يمكنك تحسين الأداء عن طريق استخدام المعالجة المتعددة أو المعالجة المتوازية. هنا مثال على كيفية القيام بذلك في سي #:
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("نص الرمز: " + result.CodeText);
Console.WriteLine("مجموعة الرموز: " + result.CodeType);
}
}
});