RecursiveAI.OneOcr
1.0.0
dotnet add package RecursiveAI.OneOcr --version 1.0.0
NuGet\Install-Package RecursiveAI.OneOcr -Version 1.0.0
<PackageReference Include="RecursiveAI.OneOcr" Version="1.0.0" />
<PackageVersion Include="RecursiveAI.OneOcr" Version="1.0.0" />
<PackageReference Include="RecursiveAI.OneOcr" />
paket add RecursiveAI.OneOcr --version 1.0.0
#r "nuget: RecursiveAI.OneOcr, 1.0.0"
#:package RecursiveAI.OneOcr@1.0.0
#addin nuget:?package=RecursiveAI.OneOcr&version=1.0.0
#tool nuget:?package=RecursiveAI.OneOcr&version=1.0.0
RecursiveAI.OneOcr
Local, deterministic OCR for .NET. Pure managed code with no dependency beyond the base class library and RecursiveAI.OneImage: no native binaries, no network. Text, boxes and confidences are bit-identical on every CPU path and at every degree of parallelism.
dotnet add package RecursiveAI.OneOcr
using OneImage;
using OneOcr;
OcrEngine engine = OcrEngine.LoadBundled(); // once; the engine is immutable and thread-safe
Image image = Image.Load("invoice.png");
string text = image.ToText(engine);
OcrPage page = image.Ocr(engine); // blocks, lines, words, tables, boxes and calibrated confidences
string markdown = image.ToMarkdown(engine);
OcrEngine.ConfigureDefault() sets a process-wide engine for the extension methods that take none. Every call takes an optional OcrOptions (an engine carries its own in engine.Options). Ocr(Image) reads one page; OcrPages reads every frame of a multi-page file, takes the resolution a PNG, JPEG or TIFF declares, and reports files it cannot read as OcrFormatException or OcrLimitException. Boxes are always in the image as you gave it, also for pages that came in rotated, and page.Diagnostics carry stable codes.
The package holds the reader, the page model and its oneocr.page JSON, local Markdown, and inference for the invoice, receipt and custom extraction models. The weights come with RecursiveAI.OneOcr.Models, which this package depends on. LLM vision, training, PDF pages and the command-line tool are separate opt-in packages.
Full documentation, benchmarks and the format specifications: https://github.com/recursive-ai-oss/oneocr-csharp
Licensed under MIT OR Apache-2.0. Third-party notices are in THIRD-PARTY-NOTICES.md.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- RecursiveAI.OneImage (>= 1.10.4)
- RecursiveAI.OneOcr.Models (>= 1.0.0)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on RecursiveAI.OneOcr:
| Package | Downloads |
|---|---|
|
RecursiveAI.OneOcr.Models.Documents
Document extraction weights for RecursiveAI.OneOcr: invoice, receipt and key-value fields. The model is embedded when the package is built with OneOcrDocumentModelFile pointing at the pinned file (see models.json). |
|
|
RecursiveAI.OneOcr.Training
Fine-tuning for RecursiveAI.OneOcr recognition models from your own documents: an LLM labels the lines, lines the local reader agrees with train the model, the rest go to a review queue. Reaches the network only through RecursiveAI.OneOcr.Llm. |
|
|
RecursiveAI.OneOcr.Llm
Opt-in language-model vision for RecursiveAI.OneOcr: Anthropic, OpenAI, OpenAI-compatible, Gemini and Azure OpenAI over plain HttpClient. This is the only OneOcr package with networking code. |
|
|
RecursiveAI.OneOcr.Pdf
PDF bridge for RecursiveAI.OneOcr: text-layer words where a page has them, local OCR for scanned regions, one page model. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 0 | 10/31/2026 |