Browse our Products

Aspose.OCR for .NET 25.1.0 - Release Notes

What was changed

KeySummaryCategory
OCRNET‑964Recognition results can now be saved in hOCR format.New feature
OCRNET‑966Optimized searchable PDFs to fully preserve the original image quality and maintain the file size.
Note: This improvement applies only when both the source and target files are in PDF format.
Enhancement
OCRNET‑975Removed deprecated APIs to improve code readability and performance.Enhancement
OCRNET‑977Changed the default language model to English (without diacritics) when no recognition language is explicitly specified.Enhancement

Public API changes and backwards compatibility

This section lists all public API changes introduced in Aspose.OCR for .NET 25.1.0 that may affect the code of existing applications.

Added public APIs:

The following public APIs have been introduced in this release:

Aspose.OCR.SaveFormat.HOCR

Instructs Aspose.OCR library to save the recognition results in hOCR format - an open standard of data representation for formatted text obtained from OCR. It includes extracted text, style, layout, and other information.

Updated public APIs:

The following public APIs have been updated in this release:

Aspose.OCR.AsposeOcr.Recognize

If the Language property is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

If your project involves the recognition of languages with diacritics, such as French, German, or Spanish, ensure you specify the language explicitly in recognition setting or use the universal Aspose.OCR.Language.ExtLatin model.

Aspose.OCR.AsposeOcr.RecognizeIDCard

If the Language property is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

If your project involves the recognition of languages with diacritics, such as French, German, or Spanish, ensure you specify the language explicitly in recognition setting or use the universal Aspose.OCR.Language.ExtLatin model.

Aspose.OCR.AsposeOcr.RecognizePassport

If the Language property is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

If your project involves the recognition of languages with diacritics, such as French, German, or Spanish, ensure you specify the language explicitly in recognition setting or use the universal Aspose.OCR.Language.ExtLatin model.

Aspose.OCR.AsposeOcr.RecognizeCarPlate

If the Language property is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

If your project involves the recognition of languages with diacritics, such as French, German, or Spanish, ensure you specify the language explicitly in recognition setting or use the universal Aspose.OCR.Language.ExtLatin model.

Aspose.OCR.AsposeOcr.RecognizeInvoice

If the Language property is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

If your project involves the recognition of languages with diacritics, such as French, German, or Spanish, ensure you specify the language explicitly in recognition setting or use the universal Aspose.OCR.Language.ExtLatin model.

Aspose.OCR.AsposeOcr.RecognizeReceipt

If the Language property is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

If your project involves the recognition of languages with diacritics, such as French, German, or Spanish, ensure you specify the language explicitly in recognition setting or use the universal Aspose.OCR.Language.ExtLatin model.

Removed public APIs:

The following APIs deprecated during 2024 have been removed in this release:

Aspose.OCR.AsposeOcr.RecognizeStreetPhoto()

Use the universal Aspose.OCR.AsposeOcr.Recognize method which allows to control recognition settings, multiple languages, image regions, spellcheck, and other advanced features.

Aspose.OCR.DetectAreasMode.NONE

Use Aspose.OCR.DetectAreasMode.LEAN, which provides the same functionality.

Aspose.OCR.DetectAreasMode.DOCUMENT

Use Aspose.OCR.DetectAreasMode.MULTICOLUMN, which provides the same functionality.

Aspose.OCR.DetectAreasMode.TEXT_IN_WILD

Use Aspose.OCR.DetectAreasMode.UNIVERSAL, which detects all blocks of text in the image, including sparse and irregular text on street photos.

Aspose.OCR.DetectAreasMode.COMBINE

Use Aspose.OCR.DetectAreasMode.UNIVERSAL, which works best with sparse irregular text.

Aspose.OCR.DetectAreasMode.PHOTO

Use Aspose.OCR.DetectAreasMode.UNIVERSAL, which is optimal for all types of text except for multi-column layouts and tables.

Aspose.OCR.Language.Cze

Use Aspose.OCR.Language.Ces to recognize texts in Czech.

Aspose.OCR.Language.Dum

Use Aspose.OCR.Language.Nld to recognize texts in Dutch.

Aspose.OCR.Language.Rum

Use Aspose.OCR.Language.Ron to recognize texts in Romanian.

Aspose.OCR.Language.Srp_hrv

Use Aspose.OCR.Language.Hbs to recognize texts in Serbo-Croatian (Latin alphabet).

Aspose.OCR.Language.Chi

Use Aspose.OCR.Language.Chinese to recognize all Chinese languages, including mixed-language Chinese/English texts.

Aspose.OCR.Language.None

Specify the recognition language directly. If the language is not specified, the OCR engine defaults to a lightweight Latin character model, which does not support diacritics.

Aspose.OCR.SpellChecker.SpellCheckLanguage.Cze

Use Aspose.OCR.SpellChecker.SpellCheckLanguage.Ces to check the spelling in Czech texts.

Aspose.OCR.SpellChecker.SpellCheckLanguage.Dum

Use Aspose.OCR.SpellChecker.SpellCheckLanguage.Nld to check the spelling in Dutch texts.

Aspose.OCR.SpellChecker.SpellCheckLanguage.Rum

Use Aspose.OCR.SpellChecker.SpellCheckLanguage.Ron to check the spelling in Romanian texts.

Examples

The code samples below illustrate the changes introduced in this release:

Save recognition results to hOCR

Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
// Add an image to OcrInput object
Aspose.OCR.OcrInput input = new Aspose.OCR.OcrInput(Aspose.OCR.InputType.SingleImage);
input.Add("source.png");
// Recognize image
Aspose.OCR.OcrOutput results = recognitionEngine.Recognize(input);
// Save result
results[0].Save("result.hocr", Aspose.OCR.SaveFormat.HOCR);