Breaking Changes from Aspose.Barcode 24.1

Hi,

I’m upgrading Aspose Barcode from 22 to latest (25). Many of the settings has been removed:

I was wondering if there is an alternative that is recommended to offer a similar functionality as before?

Examples of removed Quality Settings from the reader:
AllowQRMicroQrRestoration
AllowDatamatrixIndustrialBarcodes
AllowDetectScanGap
AllowSaltAndPaperFiltering
AllowMicroWhiteSpotsRemoving
AllowOneDFastBarcodesDetector
UseOldBarcodeDetector
AllowRegularImage
AllowDecreasedImage
AllowOneDWipedBarsRestoration
MedianSmoothingWindowSize
AllowMedianSmoothing
AllowComplexBackground (has alternative)
CheckMore1DVariants
ReadTinyBarcodes (has alternative)
AllowInvertImage (has alternative)
AllowWhiteSpotsRemoving

Thank you!

@ajj

Several properties in the QualitySettings class were removed in Aspose.Barcode for .NET 24.1, including AllowQRMicroQrRestoration, AllowDatamatrixIndustrialBarcodes, AllowDetectScanGap, AllowSaltAndPaperFiltering, AllowMicroWhiteSpotsRemoving, AllowOneDFastBarcodesDetector, UseOldBarcodeDetector, AllowRegularImage, AllowDecreasedImage, AllowOneDWipedBarsRestoration, MedianSmoothingWindowSize, AllowMedianSmoothing, and AllowWhiteSpotsRemoving . This change is documented in the 24.1 release notes, which highlights breaking changes due to a re-architected barcode reading engine .

The removal of these granular settings reflects a shift toward a more intelligent, automated recognition system. Aspose now handles image preprocessing (e.g., noise filtering, contrast adjustment, gap detection) internally using improved algorithms, eliminating the need for manual tuning of individual flags .

For developers upgrading from version 22 to 25, the recommended alternative is to use the new static QualitySettings presets:

  • QualitySettings.HighQualityDetection: Best for low-quality, damaged, or complex background barcodes (e.g., industrial DataMatrix) .
  • QualitySettings.MaxBarCodes: Use when multiple barcodes are expected and maximum detection sensitivity is required.
  • QualitySettings.NormalQualityDetection: Suitable for standard-quality images with minimal noise.

These presets internally apply optimized combinations of preprocessing and detection strategies, replacing the need for deprecated properties like AllowSaltAndPaperFiltering, AllowDetectScanGap, or UseOldBarcodeDetector .

For example, replace your old code:

reader.QualitySettings.AllowDatamatrixIndustrialBarcodes = true;
reader.QualitySettings.AllowSaltAndPaperFiltering = true;
reader.QualitySettings.UseOldBarcodeDetector = true;

With the modern equivalent:

reader.QualitySettings = QualitySettings.HighQualityDetection;

This approach simplifies configuration while maintaining or improving recognition accuracy for challenging barcodes . If specific edge cases persist, consider preprocessing images externally (e.g., contrast enhancement, denoising) before passing them to Aspose.Barcode.

@ajj,

It appears you are encountering breaking changes and setting removals when upgrading Aspose.BarCode for .NET across major version gaps (from version 22.x to the latest 24.x/25.x). This is typical for such significant library updates. You need to migrate/update your code to use the new APIs and properties introduced in the latest versions. We will evaluate your mentioned (older) APIs and attributes and provide details or consultation/migration guide on the breaking changes from Aspose.BarCode 24.1 for your requirements.

We have opened the following new ticket(s) as Task in our internal issue tracking system and provide guidance according to the terms mentioned in Free Support Policies.

Issue ID(s): BARCODENET-39493

@ajj,

We provide you all guidelines and details for your requirements. Please note, at first, we have rewritten the QualitySettings section in our documentation, where the new recognition modes are described in a clear and detailed way. The QualitySettings architecture was redesigned to reduce the number of low-level properties, as the previous approach made the recognition system overly complex and difficult to maintain.

Please refer to the updated documentation here.

If you have any questions or find that some aspects are not sufficiently clear, feel free to ask — we will be happy to clarify them and extend the documentation if needed.

About deprecated and removed properties

Some legacy properties were removed because their functionality has been replaced by higher-level recognition modes:

Other removed properties were part of the legacy recognition pipeline and have been integrated into combined high-level recognition modes, including:

  • XDimension Mode, which defines the expected size of the minimal barcode element (matrix cell or bar) and allows the engine to adapt recognition for small and large barcodes.
  • Barcode Quality Mode, which selects and enables internal methods used to recognize barcode elements based on the expected image quality.
  • Deconvolution Mode, which defines the expected level of image degradation (blur, distortion, noise) and applies appropriate restoration and recognition strategies.

These modes replace multiple low-level flags with a more consistent and predictable configuration model.