Browse our Products

Aspose.OMR for .NET 23.4.0 - Release Notes

What was changed

KeySummaryCategory
OMRNET‑807Added form generation setting which configures how to render very long words that do not fit the width of the parent element.
This setting changes the existing error handling. For more information, see Added Public APIs.
New feature

Known issues and limitations

KeySummaryWorkaround
OMRNET‑462Recognition of multi-page PDF and TIFF files causes an error.Scan each page of the filled form into a separate file and recognize them one-by-one.
OMRNET‑555Recalculate method results in incorrect processing of ScoreGroup elements (text markup / JSON markup) and CustomAnswerSheet elements (text markup / JSON markup).Use RecognizeImage method with different threshold setting instead of run-time adjustments of recognition accuracy.
n/aGenerating a form under .NET 5 and .NET 6 may occasionally fail with TypeLoadException exception.If you encounter that error, use .NET Standard 2.0 or .NET Framework 4.x.

Public API changes and backwards compatibility

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

Added public APIs:

The following public APIs have been added to Aspose.OMR for .NET 23.4.0:

Aspose.OMR.Generation.GlobalPageSettings.LongWordHandling property

This form generation setting controls how Aspose.OMR for .NET works when it encounters very long words that do not fit the parent element’s width and cannot be wrapped. By default, long words continue to appear outside the bounds of an element until a space or end of line is encountered, even if this results in overlap with other form’s elements.

Very long word that cannot be wrapped

See the description of Aspose.OMR.Generation.LongWordHandling enumeration for a list of supported values.

This property applies to texts in the following elements:

  • CheckBox (label and content)
  • ChoiceBox (question text)
  • Content
  • CustomAnswerSheet (rows)
  • Table (header, title, question, answer)
  • InputGroup
  • ScoreAnswer
  • ScoreQuestion

Aspose.OMR.Generation.LongWordHandling enumeration

This enumeration is used to specify a value of Aspose.OMR.Generation.GlobalPageSettings.LongWordHandling property.

ValueRendering behavior
DrawOverDraw long words until a space or end of line is encountered, even outside the bounds of an element.
To prevent the word from overlapping other elements, enable content clipping with the Aspose.OMR.Generation.GlobalPageSettings.Overflow property.
ThrowExceptionThrow an exception when rendering the form if the long word does not fit the width of the parent element. The form will not be generated.
This is the default form rendering behavior in previous versions of Aspose.OMR for .NET.

Updated public APIs:

No changes.

Removed public APIs:

No changes.

Usage examples

See the examples below to learn more about the changes introduced in this release:

Throw an exception when a word does not fit parent

Aspose.OMR.Generation.GlobalPageSettings globalPageSettings = new Aspose.OMR.Generation.GlobalPageSettings();
globalPageSettings.LongWordHandling = Aspose.OMR.Generation.LongWordHandling.ThrowException;
try {
	Aspose.OMR.Generation.GenerationResult generationResult = omrEngine.GenerateTemplate("source.txt", globalPageSettings);
} catch(Exception e) {
	Console.WriteLine(e);
}