Microsoft.ML.OnnxRuntime; ไม่ต้องดาวน์โหลดโมเดลและไม่ต้องเรียกเครือข่ายAsposeOcr.Recognize() ซึ่งรับOcrInput ที่สร้างจากไฟล์หนึ่งหรือหลายไฟล์ (InputType.SingleImage หรือ InputType.PDF) และOcrOutput — หนึ่ง RecognitionResult ต่อภาพหรือหน้า PDF ตามลำดับของแหล่งข้อมูล.RecognitionResult เปิดเผยข้อความเต็มของหน้าโดยผ่าน RecognitionText และRecognitionLinesResult. หน้า PDF จะถูกเรนเดอร์ภายใน (ผ่าน Aspose.PDF.FOSS)` ก่อนdotnet add package Aspose.OCR.FOSS. สำหรับAsposeOcr.Recognize(OcrInput) คือจุดเข้าถึงเดียวสำหรับทั้งรูปภาพและ PDFOcrInput รับค่า InputType.SingleImage หรือ InputType.PDF; เพิ่มหนึ่งหรือหลายเส้นทางไฟล์ด้วย OcrInput.Add()InputType.PDF ทุกหน้าได้รับการจดจำและส่งคืนตามลำดับแหล่งที่มาOcrOutput — หนึ่ง RecognitionResult ต่อภาพหรือหน้าของ PDFRecognitionResult.RecognitionText คืนค่าข้อความหน้าที่ถูกจดจำทั้งหมดRecognitionResult.RecognitionLinesResult คืนค่า RecognitionResult.LinesResult หนึ่งรายการต่อแต่ละบรรทัดข้อความที่ตรวจพบRecognitionResult.LinesResult.TextInLine เก็บข้อความที่ถูกจดจำของบรรทัดนั้นRecognitionResult.LinesResult.Line เป็น System.Drawing.Rectangle ที่ให้Microsoft.ML.OnnxRuntimeOcrInput สามารถเก็บหลายไฟล์; OcrOutput รักษาลำดับเดิมของพวกมันInputType.SingleImage และ InputType.PDF เท่านั้น — ประเภทอินพุตอื่นใดNotSupportedExceptionจดจำทุกหน้าของ PDF และพิมพ์ข้อความของแต่ละหน้าในลำดับต้นฉบับ
using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.PDF);
input.Add("document.pdf");
OcrOutput output = api.Recognize(input);
foreach (RecognitionResult page in output)
{
Console.WriteLine(page.RecognitionText);
}
จดจำภาพแรสเตอร์เดียวและพิมพ์ข้อความที่จดจำได้.
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);
วนซ้ำบรรทัดที่จดจำได้และพิมพ์ข้อความของแต่ละบรรทัดพร้อมพิกัดพิกเซลของมัน
using Aspose.OCR;
var api = new AsposeOcr();
using var input = new OcrInput(InputType.SingleImage);
input.Add("document.jpg");
RecognitionResult result = api.Recognize(input)[0];
foreach (RecognitionResult.LinesResult line in result.RecognitionLinesResult)
{
System.Drawing.Rectangle bounds = line.Line;
Console.WriteLine($"x={bounds.X}, y={bounds.Y}, width={bounds.Width}, height={bounds.Height}: {line.TextInLine}");
}
Aspose.OCR FOSS for .NET มีสัญญาอนุญาตแบบ MIT. คุณสามารถใช้, ปรับเปลี่ยน, และแจกจ่ายต่อได้ รวมถึงในผลิตภัณฑ์เชิงพาณิชย์ โดยไม่ต้องเสียค่าลิขสิทธิ์เพิ่มเติม.
ดูส่วนการติดตั้งด้านบนสำหรับคำสั่งติดตั้งปัจจุบัน.
ข้อความสคริปต์ละติน ไม่มีพารามิเตอร์การเลือกภาษา และสคริปต์ที่ไม่ใช่ละตินไม่ได้รับการครอบคลุมโดยโมเดลการจดจำที่ฝังอยู่
ไม่. โมเดล ONNX ทั้งสาม (การตรวจจับ, การปรับแต่ง, การรู้จำ) ถูกฝังอยู่ในแอสเซมบลีและทำงานแบบท้องถิ่นผ่าน Microsoft.ML.OnnxRuntime
ใช่ — เพิ่มไฟล์หลายไฟล์ลงใน OcrInput เดียวก่อนเรียก AsposeOcr.Recognize(). ผลลัพธ์ OcrOutput ที่ส่งกลับจะคงลำดับของไฟล์เหล่านั้นไว้