Pendahuluan

Aspose.OCR FOSS untuk .NET adalah sebuah perpustakaan C# sumber terbuka baru untuk mendeteksi dan mengenali teks dalam gambar raster dan dokumen PDF. Perpustakaan ini dibangun untuk pengembang .NET yang membutuhkan pengenalan teks tanpa bergantung pada layanan OCR eksternal, API cloud, atau runtime proprietari apa pun.

Perpustakaan ini berlisensi MIT dan tidak memiliki ketergantungan OCR eksternal: seluruh pipeline pengenalan — deteksi baris teks, penyempurnaan wilayah, dan pengenalan skrip Latin — dijalankan secara lokal melalui tiga model ONNX yang disematkan langsung dalam assembly dan dieksekusi pada CPU melalui Microsoft.ML.OnnxRuntime. Tidak ada langkah pengunduhan model dan tidak ada panggilan jaringan yang diperlukan saat runtime.


Apa yang Disertakan

Mengenali Gambar dan PDF Melalui Satu Titik Masuk

AsposeOcr.Recognize() adalah satu-satunya titik masuk untuk kedua jenis input. Sebuah OcrInput dibangun dengan InputType.SingleImage atau InputType.PDF, dan satu atau lebih jalur file diantrikan dengan OcrInput.Add(). Untuk InputType.PDF, setiap halaman dikenali dan dikembalikan dalam urutan sumber.

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);

Teks Tingkat Garis dan Koordinat Piksel

Setiap RecognitionResult mengembalikan teks halaman lengkap melalui RecognitionText, dan baris-baris yang dikenali secara individual melalui RecognitionLinesResult — sebuah daftar entri RecognitionResult.LinesResult, masing-masing menampilkan TextInLine dan sebuah System.Drawing.Rectangle dalam Line yang memberikan koordinat piksel baris tersebut dalam gambar sumber.

foreach (RecognitionResult.LinesResult line in result.RecognitionLinesResult)
{
    Console.WriteLine($"{line.Line}: {line.TextInLine}");
}

Pengelompokan Beberapa File

OcrInput dapat menampung lebih dari satu file. OcrOutput — nilai kembali dari Recognize() — adalah daftar RecognitionResult, satu per gambar atau halaman PDF, mempertahankan urutan asli file ditambahkan.

using var input = new OcrInput(InputType.SingleImage);
input.Add("page-1.jpg");
input.Add("page-2.png");
OcrOutput output = api.Recognize(input);

Mulai Cepat

dotnet add package Aspose.OCR.FOSS

Contoh di bawah mengenali setiap halaman PDF dengan AsposeOcr.Recognize() dan mencetak teks setiap halaman beserta baris-baris yang dikenali secara individual serta koordinat pikselnya.

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);

    foreach (RecognitionResult.LinesResult line in page.RecognitionLinesResult)
    {
        Console.WriteLine($"{line.Line}: {line.TextInLine}");
    }
}

Satu-satunya tipe input yang didukung adalah InputType.SingleImage dan InputType.PDF; tipe input lain akan menghasilkan NotSupportedException.


Sumber Terbuka & Lisensi

Aspose.OCR FOSS untuk .NET dirilis di bawah lisensi MIT. Itu dapat digunakan, dimodifikasi, dan didistribusikan kembali — termasuk dalam produk komersial — tanpa biaya lisensi tambahan. Sumber tersedia di GitHub.


Memulai

Sumber Daya Terkait