Aspose.OCR FOSS for .NET — سوالات متداول
مجوزدهی و متن باز
مدل مجوز چیست؟
Aspose.OCR FOSS برای .NET تحت مجوز MIT منتشر شده است. میتوانید از آن استفاده کنید، تغییر دهید و توزیع کنید — از جمله در محصولات تجاری — بدون هزینههای مجوز اضافی.
آیا میتوانم آن را در محصولات تجاری استفاده کنم؟
بله. مجوز MIT اجازه استفاده تجاری، تغییر و توزیع مجدد را میدهد، به شرطی که اطلاعیه حق تکثیر اصلی و متن مجوز حفظ شوند.
نصب و پیشنیازها
چگونه Aspose.OCR FOSS برای .NET را نصب کنم؟
dotnet add package Aspose.OCR.FOSSاین هدفگذاری شده برای استاندارد .NET نسخه ۲.۰، چارچوب .NET نسخه ۴.۸، و .NET ۸.۰ یا بالاتر است.
آیا وابستگیهای بومی یا خارجی وجود دارد؟
این به Aspose.PDF.FOSS (برای رندر صفحات PDF)، Microsoft.ML.OnnxRuntime (برای اجرای مدلهای تشخیص جاسازیشده) و System.Drawing.Common (برای رمزگشایی تصویر — فقط در ویندوز برای پردازش تصویر) وابسته است. سرویس OCR خارجی مورد نیاز نیست؛ هر سه مدل ONNX در اسمبلی جاسازی شدهاند.
دامنهٔ تشخیص
این چه زبانهایی را تشخیص میدهد؟
متن با حروف لاتین. پارامتر انتخاب زبان وجود ندارد و اسکریپتهای غیرلاتین توسط مدل تشخیص جاسازیشده پوشش داده نمیشوند.
چه انواع ورودیای پشتیبانی میشوند؟
فقط InputType.SingleImage و InputType.PDF. ساختن یک OcrInput با هر نوع ورودی دیگر باعث میشود AsposeOcr.Recognize() NotSupportedException را پرتاب کند.
آیا چیزی به جز متن شناساییشده برمیگرداند؟
بله. هر RecognitionResult همچنین RecognitionLinesResult را برمیگرداند — فهرستی از RecognitionResult.LinesResult که هر کدام شامل متن خط (TextInLine) و جعبه محدودکنندهٔ مختصات پیکسل (Line، یک System.Drawing.Rectangle) هستند.
API Usage
الگوی معمول شناسایی چیست؟
یک AsposeOcr بسازید، یک OcrInput را با InputType مناسب ایجاد کنید، یک یا چند فایل را با OcrInput.Add() اضافه کنید، و AsposeOcr.Recognize() را فراخوانی کنید. OcrOutput بازگردانده شده شامل یک RecognitionResult برای هر تصویر یا صفحهٔ PDF است.
using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.SingleImage);
input.Add("scan.png");
RecognitionResult result = api.Recognize(input)[0];
Console.WriteLine(result.RecognitionText);آیا میتوانم چندین فایل را در یک فراخوانی شناسایی کنم؟
بله. قبل از فراخوانی Recognize()، چندین فایل را به همان OcrInput اضافه کنید. OcrOutput ترتیب افزودن فایلها را حفظ میکند.
محدودیتهای شناختهشده
آیا Recognize() ورودی خود را اعتبارسنجی میکند؟
بله. برای یک ورودی null، ArgumentNullException را پرتاب میکند، برای یک InputType پشتیبانی نشده، NotSupportedException را پرتاب میکند، و اگر مسیر صفبندیشده وجود نداشته باشد، FileNotFoundException را پرتاب میکند — پیش از هر اجرای استنتاج مدل.