Reader SDK Documents
Breadcrumbs

IFU005(01) v2.3.0

Novarum DX Ltd
Instructions for Use / Guides

Document ID: IFU005
Revision: 01
Released: Nov 13, 2025

1. Overview

This internal release introduced foundational camera improvements and new configuration options for customizing the preview display.
While the ultrawide camera support was primarily a backend enhancement, the addition of PreviewMode scaling represents a visible and developer-facing API extension.

2. New Features

2.1. PreviewMode Scaling

  • Description:
    Added the ability to control how the camera preview is displayed — either Fit or Fill within the available view area.

  • Behavior:

    • Fit scales the preview to ensure the full frame is visible (may letterbox on some aspect ratios).

    • Fill scales to fill the entire view (may crop edges slightly).

  • Default:
    Existing integrations that omit this parameter continue using the default scaling behavior (equivalent to .fill).

2.2. Ultrawide Camera Support

  • Description:
    Internal enhancement to allow selection of ultrawide cameras when supported by the configuration.

  • Developer Impact:
    No public API changes required. This activates automatically if your AnalyserConfiguration specifies ultrawide use.

3. Breaking vs. Non-breaking Summary

Change Type

Impact

Platforms

PreviewMode Scaling (Fit/Fill)

Additive – default remains .fill

Android, iOS

Ultrawide Camera Support

Non-breaking; internal enhancement only

Android, iOS

API Parameter Additions

Non-breaking; defaults maintain existing behavior

Android, iOS

4. When to Upgrade

Recommended For:

  • Applications that require control over camera preview scaling for consistent UI layouts.

  • Integrations targeting devices with ultrawide camera configurations where configuration files specify use of those sensors.

Not Required For:

  • Apps satisfied with the existing preview scaling and not impacted by field-of-view variations.

5. Compatibility Notes

  • PreviewMode defaults to .fill if unspecified — existing code remains valid.

  • Ultrawide support activates automatically when requested by the reader configuration.

  • No dependency, build, or configuration file changes are required for this version.

6. Platform-Specific Notes

See examples and API notes

Android - Migration Guide

New property added to NovarumAnalyzerPreview:

AndroidView(  
    factory = { ctx ->  
        val p = NovarumAnalyzerPreview(ctx)  
        p.analyzerConfig = analyserConfiguration  
        p.previewMode = PreviewMode.Fill // or PreviewMode.Fit  
        ...
    }  
)

  • Default: PreviewMode.Fill

  • Developer Action:
    Set previewMode explicitly if your UI requires Fit scaling.
    Existing code without this property continues to function with the same default behavior.

iOS - Migration Guide

New parameter added to ReaderViewWrapper initializer:

ReaderViewWrapper(
  analyserConfiguration: analyserConfig,
  previewMode: .fill, // or .fit
  ...
)

  • Default: .fill

  • Developer Action:
    Update initializers if you wish to explicitly control scaling; no migration is required for existing integrations.