Browse our Products

Aspose.OCR for Java 24.11.0 - Release Notes

Deprecation warning

What was changed

KeySummaryCategory
OCRJAVA‑398Significantly improved Chinese text recognition accuracy and added support for recognizing mixed-language Chinese/English texts.New feature
OCRJAVA‑400Added support for recognizing mixed-language Korean/English texts.New feature
OCRJAVA‑400Added support for recognizing mixed-language Japanese/English texts.New feature
OCRJAVA‑397Introduced simple and straightforward content structure detection modes.Enhancement
OCRJAVA‑399Faster and more precise text extraction across various document types.Enhancement
OCRJAVA‑402Improved searchable PDF generation.Enhancement

Public API changes and backwards compatibility

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

Added public APIs:

The following public APIs have been added to Aspose.OCR for Java 24.11.0 release:

DetectAreasMode enumeration values

A scan or photograph of a text may contain a large number of blocks of various content - text paragraphs, tables, illustrations, formulas, and the like. Detecting, ordering, and classifying areas of interest on a page is the cornerstone of successful and accurate OCR.

Aspose.OCR for .NET 24.10.0 introduces simple and straightforward content structure detection modes:

NameDescriptionUse cases
DetectAreasMode.UNIVERSALDetects all blocks of text in the image, including sparse and irregular text on street photos. Default content recognition mode.A versatile option for most images, except for tables and multi-column layouts.
DetectAreasMode.MULTICOLUMNDetects large blocks of text formatted in columns.Multi-column layouts such as book pages, articles, or contracts.
DetectAreasMode.LEANPrioritizes speed and reduces resource consumption by omitting support for complex layouts.Simple images with a few lines of text without illustrations or formatting.

Updated public APIs:

The following public APIs have been updated in Aspose.OCR for Java 24.11.0 release:

Language enumeration

Aspose.OCR for Java can now recognize Japanese and Korean texts, including texts in mixed Japanese/English and Korean/English scripts:

ValueAlphabet
Language.JpnJapanese
Language.KorKorean

Removed public APIs:

No changes.

Deprecated APIs

The following public APIs have been marked as deprecated and will be removed in 25.1.0 (January 2025) release:

DetectAreasMode.NONE

Use DetectAreasMode.LEAN for recognizing simple images with a few lines of text without illustrations or formatting, prioritizing speed and reducing resource consumption.

DetectAreasMode.PHOTO

Use DetectAreasMode.UNIVERSAL for photos and screenshots.

DetectAreasMode.COMBINE

Use DetectAreasMode.UNIVERSAL for most documents.

DetectAreasMode.TEXT_IN_WILD

Use DetectAreasMode.UNIVERSAL for street photos.

DetectAreasMode.DOCUMENT

Use DetectAreasMode.MULTICOLUMN for recognizing multi-column layouts.

RecognizeStreetPhoto() method

Use the universal Recognize() method for extracting text from street photos.

Examples

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

Recognizing multi-column layout

// Create instance of OCR API
AsposeOCR api = new AsposeOCR();
// Enable automatic document areas detection
RecognitionSettings recognitionSettings = new RecognitionSettings();
recognitionSettings.setDetectAreasMode(DetectAreasMode.MULTICOLUMN);
// Prepare batch
OcrInput images = new OcrInput(InputType.SingleImage);
images.add("image.png");
// Recognize images
ArrayList<RecognitionResult> results = api.Recognize(images, recognitionSettings);
System.out.println("Recognition result:\n" + results[0].recognitionText + "\n\n");

Japanese language recognition

AsposeOCR api = new AsposeOCR();
RecognitionSettings recognitionSettings = new RecognitionSettings();
// Recognize Japanese text
recognitionSettings.setLanguage(Language.Jpn);
RecognitionResult result = api.RecognizePage("source.png", recognitionSettings);
System.out.println("Recognition result:\n" + result.recognitionText + "\n\n");