Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 19 additions & 19 deletions _includes/sidelist-parameters-organization.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<li><a href="{{ site.dcvb_parameters }}file/index.html" class="otherLinkColour">Parameter</a>
<li><a href="{{ site.dcvb_parameters_reference }}index.html" class="otherLinkColour">Parameter</a>
<ul>
<li><a href="{{ site.dcvb_parameters }}file/capture-vision-template.html" class="otherLinkColour">CaptureVisionTemplate Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-template/index.html" class="otherLinkColour">CaptureVisionTemplate Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-template/image-roi-processing-name-array.html" class="otherLinkColour">ImageROIProcessingNameArray</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-template/image-source-name.html" class="otherLinkColour">ImageSourceName</a></li>
Expand All @@ -12,7 +12,7 @@
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-template/timeout.html" class="otherLinkColour">Timeout</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/image-source.html" class="otherLinkColour">ImageSource Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}image-source-options/index.html" class="otherLinkColour">ImageSource Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}image-source-options/directory-path.html" class="otherLinkColour">DirectoryPath</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}image-source-options/file-filter.html" class="otherLinkColour">FileFilter</a></li>
Expand All @@ -23,7 +23,7 @@
<li><a href="{{ site.dcvb_parameters_reference }}image-source-options/type.html" class="otherLinkColour">Type</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/target-roi-definition/index.html" class="otherLinkColour">TargetROIDef Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}target-roi-def/index.html" class="otherLinkColour">TargetROIDef Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}target-roi-def/base-target-roidef-name.html" class="otherLinkColour">BaseTargetROIDefName</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}target-roi-def/enable-results-deduplication.html" class="otherLinkColour">EnableResultsDeduplication</a></li>
Expand Down Expand Up @@ -60,7 +60,7 @@
<li><a href="{{ site.dcvb_parameters_reference }}target-roi-def/task-setting-name-array.html" class="otherLinkColour">TaskSettingNameArray</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/task-settings/barcode-reader-task-settings.html" class="otherLinkColour">BarcodeReaderTaskSetting Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-reader-task-settings/index.html" class="otherLinkColour">BarcodeReaderTaskSetting Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-reader-task-settings/barcode-format-ids.html" class="otherLinkColour">BarcodeFormatIds</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-reader-task-settings/barcode-format-specification-name-array.html" class="otherLinkColour">BarcodeFormatSpecificationNameArray</a></li>
Expand Down Expand Up @@ -106,8 +106,8 @@
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-reader-task-settings/section-barcode-decoding.html" class="otherLinkColour">BarcodeDecodingSection Object</a>
<ul>
Expand Down Expand Up @@ -148,13 +148,13 @@
</li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/task-settings/output-task-setting.html" class="otherLinkColour">OutputTaskSetting Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}output-task-setting/index.html" class="otherLinkColour">OutputTaskSetting Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}output-task-setting/name.html" class="otherLinkColour">Name</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}output-task-setting/output-condition.html" class="otherLinkColour">OutputCondition</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/image-parameter.html" class="otherLinkColour">ImageParameter Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}image-parameter/index.html" class="otherLinkColour">ImageParameter Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}image-parameter/base-image-parameter-name.html" class="otherLinkColour">BaseImageParameterName</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}image-parameter/name.html" class="otherLinkColour">Name</a></li>
Expand Down Expand Up @@ -241,7 +241,7 @@
</li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/barcode-format-specification.html" class="otherLinkColour">BarcodeFormatSpecification Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/index.html" class="otherLinkColour">BarcodeFormatSpecification Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/all-module-deviation.html" class="otherLinkColour">AllModuleDeviation</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/australian-post-encoding-table.html" class="otherLinkColour">AustralianPostEncodingTable</a></li>
Expand Down Expand Up @@ -284,22 +284,22 @@
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/verify-check-digit.html" class="otherLinkColour">VerifyCheckDigit</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/capture-vision-model.html" class="otherLinkColour">CaptureVisionModel Object</a>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-model/index.html" class="otherLinkColour">CaptureVisionModel Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/capture-vision-model.html#directorypath" class="otherLinkColour">DirectoryPath</a></li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/capture-vision-model.html#maxmodelinstances" class="otherLinkColour">MaxModelInstances</a></li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/capture-vision-model.html#modelargs" class="otherLinkColour">ModelArgs</a>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-model/index.html#directorypath" class="otherLinkColour">DirectoryPath</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-model/index.html#maxmodelinstances" class="otherLinkColour">MaxModelInstances</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-model/index.html#modelargs" class="otherLinkColour">ModelArgs</a>
<ul>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/char-set.html#" class="otherLinkColour">CharSet Object</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-model/index.html#modelargs" class="otherLinkColour">ModelArgs</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/capture-vision-model.html#name" class="otherLinkColour">Name</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}capture-vision-model/index.html#name" class="otherLinkColour">Name</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/global-parameter.html" class="otherLinkColour">Global Parameter</a>
<li><a href="{{ site.dcvb_parameters_reference }}global-parameter.html" class="otherLinkColour">Global Parameter</a>
<ul>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/global-parameter.html#maxtotalimagedimension" class="otherLinkColour">MaxTotalImageDimension</a></li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/global-parameter.html#intraopnumthreads" class="otherLinkColour">IntraOpNumThreads</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}global-parameter.html#maxtotalimagedimension" class="otherLinkColour">MaxTotalImageDimension</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}global-parameter.html#intraopnumthreads" class="otherLinkColour">IntraOpNumThreads</a></li>
</ul>
</li>
</ul>
Expand Down
2 changes: 1 addition & 1 deletion llms.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,5 +38,5 @@ This sub-site is a companion to the Parameter & Architecture Reference (https://

## Pages

{% for article in site.pages %}{% if article.title %}- [{{article.title}}](https://www.dynamsoft.com{{ article.url | relative_url }}): {{ article.description }}{% endif %}
{% for article in site.pages %}{% if article.title %}- [{{article.title}}](https://www.dynamsoft.com{{ article.url | relative_url | replace: '.html', '.md' }}): {{ article.description }}{% endif %}
{% endfor %}
2 changes: 1 addition & 1 deletion performance/accuracy.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ The related parameters are [ `BarcodeFormatIds` ]({{ site.dcvb_parameters_refere

### Enable Result Text Filter

When the target barcodes are confirmed, the barcode texts might have common features that help you implement a result filter on the result text. Using the [`BarcodeFormatSpecification`]({{site.dcvb_parameters}}file/auxiliary/barcode-format-specification.html) parameters, you can add barcode result text restrictions like [`regular expression`]({{site.dcvb_parameters_reference}}barcode-format-specification/barcode-text-regex-pattern.html) requirements and [`text length`]({{site.dcvb_parameters_reference}}barcode-format-specification/barcode-text-length-range-array.html) range.
When the target barcodes are confirmed, the barcode texts might have common features that help you implement a result filter on the result text. Using the [`BarcodeFormatSpecification`]({{ site.dcvb_parameters_reference }}barcode-format-specification/index.html) parameters, you can add barcode result text restrictions like [`regular expression`]({{site.dcvb_parameters_reference}}barcode-format-specification/barcode-text-regex-pattern.html) requirements and [`text length`]({{site.dcvb_parameters_reference}}barcode-format-specification/barcode-text-length-range-array.html) range.


### Exclude Small-Module Barcodes
Expand Down
2 changes: 1 addition & 1 deletion performance/speed.md
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ When reading barcodes from a certain type of documents or from a video input, th

There are two ways to specify the region:

* manually define a region by providing the coordinates of its contours. Each region is defined by a [TargetROIDef]({{ site.dcvb_parameters }}file/target-roi-definition/index.html) and then specified by [Location]({{ site.dcvb_parameters_reference }}target-roi-def/location.html);
* manually define a region by providing the coordinates of its contours. Each region is defined by a [TargetROIDef]({{ site.dcvb_parameters_reference }}target-roi-def/index.html) and then specified by [Location]({{ site.dcvb_parameters_reference }}target-roi-def/location.html);

* let DBR find the region based on the colour/grayscale distribution of different parts of the image, this is controlled by the parameter [RegionPredetectionModes]({{ site.dcvb_parameters_reference }}image-parameter/region-predetection-modes.html).

Expand Down
2 changes: 1 addition & 1 deletion programming/features/barcode-scan-region.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ noTitleIndex: true

# Read a Specific Area/Region

Dynamsoft Barcode Reader (DBR) will locate the code region and decode the entire image by default. However, if only a specific region of the image or video is required to locate the barcode, you can define a Region Of Interest (ROI) via the parameter `TargetROIDef`. After defining a specific region, DBR will only decode barcodes within that region. Of course, this is very conducive to increasing the speed. Please refer to [`Design of the TargetROIDef Object`]({{ site.dcvb_parameters }}file/target-roi-definition/index.html) to learn more about `TargetROIDef` and how it works,.
Dynamsoft Barcode Reader (DBR) will locate the code region and decode the entire image by default. However, if only a specific region of the image or video is required to locate the barcode, you can define a Region Of Interest (ROI) via the parameter `TargetROIDef`. After defining a specific region, DBR will only decode barcodes within that region. Of course, this is very conducive to increasing the speed. Please refer to [`Design of the TargetROIDef Object`]({{ site.dcvb_parameters_reference }}target-roi-def/index.html) to learn more about `TargetROIDef` and how it works,.

## Single Region Specification

Expand Down
54 changes: 54 additions & 0 deletions programming/features/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
layout: default-layout
title: Feature Articles - Dynamsoft Barcode Reader SDK
description: A collection of feature articles that explain how to configure Dynamsoft Barcode Reader to handle specific reading scenarios, such as difficult barcode surfaces, preprocessing, result handling, and UI customization.
keywords: barcode reader, features, feature articles
needGenerateH3Content: false
---

# Feature Articles

The articles in this section explain how to configure Dynamsoft Barcode Reader to read barcodes in specific scenarios. Each article focuses on one feature and shows the parameters, modes, and code needed to apply it.

## Configuration Basics

* [Use SimplifiedCaptureVisionSettings or JSON Template](use-runtimesettings-or-templates.md): Compare the two ways to configure the SDK and learn the syntax rules of each.
* [Specify Barcode Formats and Count](barcode-formats-and-count.md): Target specific barcode formats and set the expected number of barcodes per image.
* [Control When to Terminate a Decoding Process](control-terminate-phase.md): End decoding early with `SectionArray`, `Timeout`, and `ExpectedBarcodesCount`.
* [Use Format Specific Configuration](use-format-specific-configuration.md): Apply settings for a particular barcode type with `BarcodeFormatSpecification`.
* [Read Barcode from Different Image Sources](read-different-source.md): Read from file paths, in-memory images, and raw pixel buffers.

## Scan Region and Preprocessing

* [Read a Specific Area/Region](barcode-scan-region.md): Restrict decoding to a region of interest with `TargetROIDef`.
* [Read Barcodes from a Specific Area/Region on Mobile](barcode-scan-region-mobile.md): Define a scan region on Android and iOS with Dynamsoft Camera Enhancer.
* [How To Use Region Predetection](use-region-predetection.md): Let the SDK find the regions of interest automatically.
* [How to Preprocess Images based on Different Scenarios](preprocess-images.md): Improve the detection rate with grayscale enhancement and binarization.
* [How to Read Barcodes from Large Images](read-a-large-image.md): Speed up decoding of large images with `ImageScaleSetting`.
* [How to Read Barcodes from Images with Textures](read-images-with-texture.md): Remove background texture with `TextureDetectionModes`.
* [How to Read Barcodes from an Image With Lots of Text](read-images-with-lots-of-text.md): Filter surrounding text so it does not interfere with localization.
* [How to Read Barcodes with Uneven Lighting](read-barcodes-with-uneven-lighting.md): Choose the right binarization mode for uneven lighting.
* [How to Read Barcodes with Imbalanced Colour](read-barcodes-with-imbalanced-colour.md): Tune RGB channel weights to produce a better grayscale image.

## Difficult Barcode Surfaces

* [Read Deformed Barcodes](read-deformed-barcodes.md): Read distorted barcodes on flexible packaging and cylindrical surfaces.
* [Read Incomplete Barcodes](read-incomplete-barcodes.md): Reconstruct barcodes with missing or damaged sections.
* [Read Inverted Barcodes](read-inverted-barcodes.md): Read light-on-dark barcodes.
* [How to Read High-Density QR Codes](read-dense-barcodes.md): Improve recognition of high-density QR codes.
* [How to Read Barcodes with Small Module Size](read-barcodes-with-small-module-size.md): Upscale tiny barcode symbols before recognition.

## Working with Results

* [How to Filter and Sort Barcode Results](filter-and-sort.md): Filter results by format, confidence, and region; sort by position or confidence.
* [How to Get Barcode Location](get-barcode-location.md): Retrieve the coordinates of decoded barcodes.
* [How to Get Barcode Confidence and Rotation Angle](get-confidence-rotation.md): Retrieve confidence scores and rotation angles.
* [How to Get Detailed Barcode Information](get-detailed-info.md): Access format-specific details such as module size and error correction level.
* [How to Use Intermediate Results](use-intermidiate-results.md): Access in-process data such as grayscale images and localization results.

## Video Streaming and UI

* [Read Barcode from Video Streaming (JavaScript)](read-video-streaming-js.md): Read from a live video stream with the `BarcodeScanner` class.
* [Read Barcode from Video Streaming (Mobile)](read-video-streaming-mobile.md): Capture and read video on Android and iOS with Dynamsoft Camera Enhancer.
* [Customize the UI for DBR JS](customize-the-ui.md): Customize the built-in UI of the `BarcodeScanner` class.
* [Customize the UI (Dynamsoft Camera Enhancer)](ui-customization-js.md): Customize the camera viewer UI with UI definition files and APIs.
2 changes: 1 addition & 1 deletion programming/features/use-runtimesettings-or-templates.md
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ Basic steps:
2. Save the template to a file or convert it to string
3. Call method `InitSettingsFromFile` or `InitSettings` to apply the settings

> Read [Parameter Template Structure]({{ site.dcvb_parameters }}file/index.html) to learn more about the structure of templates.
> Read [Parameter Template Structure]({{ site.dcvb_parameters_reference }}index.html) to learn more about the structure of templates.

> JavaScript edition only supports importing a JSON string and not a file.

Expand Down
21 changes: 21 additions & 0 deletions programming/usecases/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
layout: default-layout
title: Use Cases - Dynamsoft Barcode Reader SDK
description: This page presents real-world use cases of Dynamsoft Barcode Reader, including reading DPM codes, postal codes, PDF417 on AAMVA documents, and scanning barcodes as input.
keywords: barcode reader, use cases
needGenerateH3Content: false
---

# Use Cases

This section presents complete, real-world scenarios that combine multiple features of Dynamsoft Barcode Reader.

## Reading Codes in Specific Scenarios

* [How to Read DPM Codes](read-dpm-codes.md): Read Direct Part Mark (DPM) codes engraved or etched directly onto manufactured parts.
* [How to Read Postal Codes](read-postal-codes.md): Read postal barcodes such as USPS Intelligent Mail, Australia Post, and Royal Mail codes.

## Scanning and Parsing Data

* [Scan Barcodes as Input](scan-barcodes-as-input.md): Use barcode results as input to fill forms and trigger further actions.
* [Scan and parse PDF417 on AAMVA documents](scan-and-parse-AAMVA.md): Read and extract the encoded information on AAMVA-compatible driver's licenses.
4 changes: 2 additions & 2 deletions programming/usecases/read-dpm-codes.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,5 +52,5 @@ Below is an example illustrating how to configure the parameter `DPMCodeReadingM
```
* Apply the above settings following the article [Use Templates for Configuring Parameters]({{ site.features }}use-runtimesettings-or-templates.html#json-template).

[1]:assets\read-dpm-codes\DPM-sample1.png
[2]:assets\read-dpm-codes\DPM-sample2.png
[1]:assets/read-dpm-codes/DPM-sample1.png
[2]:assets/read-dpm-codes/DPM-sample2.png
Empty file.
Loading