كيفية دمج عملية OCR متعددة اللغات مع Aspose.OCR
إن الرقمنة في الأرشيفات العالمية أو الوثائق التجارية أو النماذج الاستطلاعية غالباً ما تعني العمل مع العديد من اللغات.إن الاستخراج اليدوي بطيئ وغير قابل للتوسع.تسمح لك Aspose.OCR for .NET بتحويل النص إلى لغات مختلفة من حجم كبير من الصور أو PDFs باستخدام خطوط رمزية قليلة فقط.
مشكلة العالم الحقيقي
وتتعامل الشركات الدولية والمكتبات وخدمات البيانات في كثير من الأحيان مع الوثائق اللغوية المختلطة.التصنيف اليدوي والاستخراج اللغوي المحدد متعبا ومخالفة للخطأ - وخاصة عند تقسيمها إلى الآلاف من المستندات.
نظرة عامة على الحل
يدعم Aspose.OCR for .NET أكثر من 30 لغة.يمكنك تكوين إعدادات التعرف على الملف أو المجموعة، ثم تلقائيا استخراج وتصدير إلى تنسيقك المفضل للتكامل السليم في تدفقات العمل التجارية أو البحثية.
المتطلبات
- Visual Studio 2019 أو أحدث
- .NET 6.0 أو أعلى (أو .Net Framework 4.6.2+)
- Aspose.OCR لـ .NET من NuGet
- الخبرة في البرمجة C#
PM> Install-Package Aspose.OCR
تنفيذ خطوة بخطوة
الخطوة 1: تثبيت وتكوين Aspose.OCR
using Aspose.OCR;
الخطوة 2: تنظيم ملفات الإدخال حسب اللغة
قم بتنظيم صور إدخالك أو ملفات PDF حسب اللغة في مجلدات منفصلة، أو استخدم اتفاقية تسمية:
// Example folders: ./input/en, ./input/fr, ./input/zh
الخطوة 3: قم بتعيين إعدادات التعرف حسب اللغة
Dictionary<string, Language> langFolders = new Dictionary<string, Language>
{
{ "en", Language.English },
{ "fr", Language.French },
{ "zh", Language.ChineseSimplified }
};
الخطوة 4: إدخال ملفات Batch Process
foreach (var pair in langFolders)
{
string folder = "./input/" + pair.Key;
RecognitionSettings settings = new RecognitionSettings();
settings.Language = pair.Value;
OcrInput input = new OcrInput(InputType.SingleImage);
foreach (string file in Directory.GetFiles(folder, "*.png"))
{
input.Add(file);
}
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
foreach (RecognitionResult result in results)
{
string output = Path.Combine("./output/", pair.Key + "_" + Path.GetFileNameWithoutExtension(result.FileName) + ".txt");
result.Save(output, SaveFormat.Text);
}
}
الخطوة 5: إضافة التعامل مع الأخطاء والأتمتة
try
{
// batch processing code
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
الخطوة 6: تحسين السرعة والدقة
- تشغيل المعالجة بالتوازي (مع رعاية الذاكرة / CPU)
- استخدم صور عالية الجودة للحصول على أفضل النتائج
- تنسيق إعدادات التعرف على ميزات التصميم المشتركة في كل لغة
// Example: Parallel batch processing
Parallel.ForEach(langFolders, pair =>
{
// per-language processing logic
});
الخطوة السابعة: نموذج كامل
using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;
class Program
{
static void Main(string[] args)
{
try
{
Dictionary<string, Language> langFolders = new Dictionary<string, Language>
{
{ "en", Language.English },
{ "fr", Language.French },
{ "zh", Language.ChineseSimplified }
};
foreach (var pair in langFolders)
{
string folder = "./input/" + pair.Key;
RecognitionSettings settings = new RecognitionSettings();
settings.Language = pair.Value;
OcrInput input = new OcrInput(InputType.SingleImage);
foreach (string file in Directory.GetFiles(folder, "*.png"))
{
input.Add(file);
}
AsposeOcr ocr = new AsposeOcr();
List<RecognitionResult> results = ocr.Recognize(input, settings);
foreach (RecognitionResult result in results)
{
string output = Path.Combine("./output/", pair.Key + "_" + Path.GetFileNameWithoutExtension(result.FileName) + ".txt");
result.Save(output, SaveFormat.Text);
}
}
}
catch (Exception ex)
{
Console.WriteLine($"Error: {ex.Message}");
}
}
}
استخدام الحالات والتطبيقات
الأرشيف العالمي الرقمية
استخراج النص التلقائي من الأرشيفات المتعددة اللغات أو الصحف أو سجلات الشركات.
الأتمتة التجارية الدولية
توفير نتائج OCR من عقود اللغة المختلطة أو الفواتير أو وثائق الموارد البشرية إلى ERP أو تدفق العمل العالمي الخاص بك.
التوافق المتعدد اللغات والبحث
إمكانية البحث الكامل والتحقق من الامتثال عبر المستندات في العديد من اللغات.
التحديات والحلول المشتركة
التحدي الأول: مستندات اللغة المختلطة
الحل: قم بتشغيل الكشف والمعالجة حسب الصفحة، أو استخدم وضع اللغة AUTO إذا كان متاحًا.
التحدي الثاني: نوعية الصورة المختلفة
الحل: توحيد الفحص، وتشغيل المعالجة المسبقة لتطبيع جودة الصورة.
التحدي الثالث: أداء البطاطا
** الحل: ** العملية بالتوازي حيثما كان ذلك ممكنا، وتحسين استخدام الموارد.
اعتبارات الأداء
- تنظيم مجموعة من الوظائف حسب اللغة من أجل كفاءة الموارد
- مراقبة الذاكرة/CPU مع وظائف متوازية
- تأكيد الناتج في كل شريط
أفضل الممارسات
- الحفاظ على مجلدات اللغة المنظمة لحل المشاكل بسهولة
- تأكيد مجموعة العينات لكل لغة
- تحديث Aspose.OCR لأحدث التحسينات اللغوية
- تأمين بيانات الإدخال والخروج
سيناريوهات متقدمة
السيناريو 1: تصدير نتائج متعددة اللغات إلى JSON
foreach (RecognitionResult result in results)
{
result.Save(output.Replace(".txt", ".json"), SaveFormat.Json);
}
سيناريو 2: اكتشاف اللغة تلقائيًا (إذا تم دعمها)
settings.Language = Language.Auto;
استنتاجات
يتيح لك Aspose.OCR for .NET تلقائيًا استخراج النص من مجموعات الصور المتنوعة والمتعددة اللغات – وتسريع الرقمنة العالمية وجعل ملفاتك قابلة للبحث والاكتشاف والاستعداد للتكامل في تدفق العمل.
للحصول على قائمة كاملة باللغات المدعومة والنصائح المتقدمة، يرجى زيارة أرشيف الوسم : .NET API Reference .