Aspose.OCR FOSS for .NET — استكشاف الأخطاء وإصلاحها
تُظهر هذه الصفحة الأخطاء والقيود الأكثر احتمالاً للظهور أثناء دمج Aspose.OCR FOSS لـ .NET، مع السبب الحقيقي وراء كل منها.
الاستثناءات التي تُطرح بواسطة Recognize()
AsposeOcr.Recognize() يتحقق من صحة مدخلاته قبل تشغيل أي نموذج. كل فحص أدناه يفشل بهذا الترتيب:
| Exception | السبب | إصلاح |
|---|---|---|
ArgumentNullException | الـOcrInput الممرّ إلى Recognize() هو null | دائمًا أنشئ OcrInput قبل استدعاء Recognize() |
NotSupportedException | تم إنشاء OcrInput باستخدام InputType غير SingleImage أو PDF | فقط InputType.SingleImage وInputType.PDF صالحة |
FileNotFoundException | المسار المضاف عبر OcrInput.Add() غير موجود على القرص | تحقق من صحة كل مسار قبل استدعاء Add() — الملف المفقود يؤدي إلى فشل الاستدعاء بأكمله، وليس فقط ذلك الملف |
التعرف لا يُعيد نصًا
إذا كان RecognitionResult.RecognitionText فارغًا ولا يحتوي RecognitionLinesResult على أي إدخالات، فإن الكاشف لم يجد أي منطقة سطر نصي في الصورة. هذا متوقع — وليس خطأً — لـ:
- الصور التي لا تحتوي على نص قابل للقراءة، أو نص صغير جدًا، أو مائل، أو منخفض التباين بحيث لا يستطيع الكاشف تسجيله كمنطقة
- الخطوط غير اللاتينية: نموذج التعرف المتضمن يغطي فقط النص المكتوب بالحروف اللاتينية وحروفه المتحركة
- الصور التي تم تصفية المناطق المكتشفة فيها أثناء المعالجة اللاحقة (درجات احتمالية النص منخفضة جداً)
لا يوجد مقياس ثقة معروض للتمييز بين “لم يتم الكشف عن شيء” و “تم الكشف لكن غير مؤكد” — انظر النطاق والقيود.
تشغيل التعرف لكن النتائج تبدو خاطئة
- نص مدور أو مائل. لا يوجد تصحيح تلقائي للانحراف أو التدوير. قم بتدوير الصورة المصدر مسبقًا قبل الاستدعاء
Recognize(). - تصميمات الجداول أو النماذج تبدو مشوشة. المكتشف يُعيد مستطيلات خطوط محاذاة للمحاور فقط — لا يمتلك مفهوم الأعمدة أو الجداول أو ترتيب القراءة بخلاف موضع السطر. إعادة بناء التخطيط هي مسؤولية المستدعي.
- يبدو أن موضع نص PDF مُزاح. صفحات PDF تُعرض دائمًا داخليًا بدقة 150 DPI؛ إحداثيات المستطيل في
RecognitionResult.LinesResult.Lineتقع في مساحة بكسلات الصورة المُعروضة، وليس في مساحة النقاط الخاصة بـ PDF.
مشكلات المنصة والبناء
PlatformNotSupportedExceptionأو ما شابه أثناء التشغيل على لينكس/ماك أو إس. يعتمد Image processing علىSystem.Drawing.Common, والتي هي Windows-only على .NET 6 وما بعده. مسار Image-processing في هذه المكتبة يعمل فقط على Windows.- فشل Build عند استهداف
net9.0/net10.0. يتطلب بناء تلك الأهداف .NET 10 SDK — انظر كيفية Build من المصدر. - Mixing
InputType.SingleImageandInputType.PDFفي واحدةOcrInput. غير مدعوم — انظر كيفية معالجة عدة صور دفعةً واحدة.