كيف تُسرّع مسح الباركود أحادي الأبعاد بالجملة في عمليات الجرد ومستودعات التخزين في .NET

كيف تُسرّع مسح الباركود أحادي الأبعاد بالجملة في عمليات الجرد ومستودعات التخزين في .NET

المسح الضخم للباركود هو العمود الفقري لإدارة المخزون، المستودعات، وعمليات الشحن. تؤدي عمليات المسح البطيئة إلى اختناقات وأخطاء، خاصةً مع آلاف العناصر أو الملصقات. تحسين سرعة المسح يساعد في الحفاظ على دقة المخزون في الوقت الحقيقي وكفاءة سير العمل.

الخطوة 2: إنشاء مولد باركود Code 128

using Aspose.BarCode.BarCodeRecognition;
using System.IO;
using System;
using System.Threading.Tasks;

class Program
{
  static void Main()
  {
    string[] files = Directory.GetFiles("labels/", "*.jpg");
    Parallel.ForEach(files, imagePath =>
    {
      using (BarCodeReader reader = new BarCodeReader(imagePath, DecodeType.Code128, DecodeType.EAN13, DecodeType.UPCA))
      {
      foreach (BarCodeResult result in reader.ReadBarCodes())
        Console.WriteLine($"File: {imagePath}, Type: {result.CodeTypeName}, Value: {result.CodeText}");
      }
    });
  }
} 

فهرس

  1. مقدمة
  2. لماذا سرعة التعرف على الباركود مهمة في إدارة المخزون والمستودعات
  3. الخطوة 2: إنشاء مولد باركود Code 128
  4. المتطلبات
  5. دليل خطوة بخطوة
  6. نصائح الأداء: الترشيح، الاستهداف، والتوازي
  7. المشاكل المشتركة وحل المشاكل
  8. قم بضبط ارتفاع الشريط وXDimension لتتناسب مع متطلبات حجم الملصق أو التغليف.
  9. أفضل الممارسات
  10. استنتاجات

تشرح هذه المقالة طرقًا عملية لتعظيم سرعة التعرف على الباركود عند معالجة أعداد كبيرة من صور الباركود أحادية الأبعاد في .NET. تشمل حالات الاستخدام وضع العلامات في المستودعات، جرد الدفعات، وإدارة سلسلة التوريد.


المتطلبات

  • Visual Studio 2019 أو أحدث
  • .س: كيف يمكنني ترميز القيم الرقمية الطويلة بكفاءة؟ ج: استخدم Code128EncodeMode.CodeC للبيانات الرقمية فقط (يجب أن يكون الطول زوجيًا) لتضاعف كثافة الترميز.
  • Aspose.BarCode for .NET (NuGet)
  • دفعة من الصور التي تحتوي على باركود أحادي الأبعاد (JPG, PNG, TIFF)
PM> Install-Package Aspose.BarCode 

دليل خطوة بخطوة

  1. تثبيت Aspose.BarCode لـ .NET وجمع ملفات صور الباركود الخاصة بك.
  2. قصر التعرف على DecodeTypes المطلوبة (مثلاً، Code128، EAN-13، UPC-A) لأفضل سرعة.
  3. (اختياري) قص أو تعيين مناطق الاهتمام إذا كانت الباركودات في مواقع يمكن التنبؤ بها.
  4. المعالجة الموازية:
  5. تجميع النتائج لعمليات الجرد أو سير عمل الشحن.

نصائح الأداء: الترشيح، الاستهداف، والتوازي

  • تصفية DecodeType: حدد فقط أنواع الباركود 1D التي تتوقعها؛ يوفّر ذلك وقت المعالجة الضائع.
  • استهداف المنطقة: إذا ظهرت الباركود دائمًا في نفس المنطقة (مثلاً، أسفل الملصق)، حدد مستطيل لتقييد بحث التعرف.
  • المعالجة الدفعية والمتوازية: استخدم Parallel.ForEach, كود غير متزامن، أو مجموعات الخيوط لمعالجة عدة صور في آن واحد.
  • تجنب الصور الكبيرة: قلل أبعاد الصور إلى ما فوق دقة الباركود فقط للحصول على قراءة أسرع.

المشاكل المشتركة وحل المشاكل

  • استخدام المعالج مرتفع جدًا؟?
    • حدّ درجة التوازي، أو استخدم دفعات أصغر.
  • إيجابيات كاذبة؟?
    • قم بتصفية النتائج حسب نوع الباركود أو الثقة.
  • ما زال التعرف بطيئًا؟?
    • قيد أكثر إلى نوع أو نوعين فقط من DecodeTypes.

قم بضبط ارتفاع الشريط وXDimension لتتناسب مع متطلبات حجم الملصق أو التغليف.

Q: هل يمكنني مسح PDF أو TIFFs متعددة الصفحات دفعة واحدة؟? A: نعم—قم بالتكرار عبر كل صفحة وتطبيق نفس منطق التعرف.

Q: ما هو أفضل حجم دفعة؟? A: يعتمد على CPU و RAM — جرّب للحصول على أفضل أداء على جهازك.


أفضل الممارسات

نصيحةافعللا تفعل
DecodeTypeاستخدم فقط الأنواع الأحادية الأبعاد المطلوبةاستخدم AllSupportedTypes
التوازياستخدم Parallel.ForEach للمعالجة الضخمةمعالجة الصور بشكل تسلسلي
حجم الصورةخفض الدقة للسرعةاستخدام صور كاميرا RAW ضخمة
معالجة الاستثناءاتالتقاط وتسجيل الأخطاء على دفعاتتجاهل القراءات الفاشلة

استنتاجات

المسح الضوئي السريع والموثوق للباركود على نطاق واسع ضروري لإدارة المخزون وإدارة المستودعات بكفاءة. باستخدام Aspose.BarCode لـ .NET، يمكنك معالجة آلاف الملصقات بسرعة باستخدام تصفية DecodeType، وتحديد المناطق، ومعالجة الدُفعات المتوازية. انظر Aspose.BarCode API Reference لمزيد من تحسينات سير العمل.

 عربي