Skip to content
Closed
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
6 changes: 3 additions & 3 deletions barcode-reader/mobile/debug/troubleshooting-failed-image.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ If the barcode is not recognized by Dynamsoft Barcode Reader, please do not hesi
Alternatively, here is the general troubleshooting steps:

1. Please ensure the lighting is not very bright or very dim.
2. Please ensure the aiming barcode format has been checked on.(Advanced Scan -> settings -> Barcode Format -> check the barcode formats)
3. We can decrease the Confidence level to increase the read rate.(Advanced Scan -> settings -> Result Settings -> Set Confidence Level to 10)
4. We can increase the deblur level to increase the read rate.(Advanced Scan -> settings -> Additional Settings -> increase DeblurLevel)
2. Please ensure the aiming barcode format has been checked on.(Any Codes -> settings -> Barcode Format -> check the barcode formats)
3. We can decrease the Confidence level to increase the read rate.(Any Codes -> settings -> Result Settings -> Set Confidence Level to 10)
4. We can increase the deblur level to increase the read rate.(Any Codes -> settings -> Additional Settings -> increase DeblurLevel)
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Most QR codes today follow the **QR Code Model 2** standard. By default, **Barco

5. Send your saved template to the [Dynamsoft Support Team](https://www.dynamsoft.com/contact/?ver=latest){:target="_blank"}.
6. Our team will generate and send you a unique link for the configuration.
7. In the **Advanced Scan Settings** of BarcodeScannerX (on Android or iOS), tap **Import Template** and paste the link.
7. In the **Any Codes** of BarcodeScannerX (on Android or iOS), tap **Import Template** and paste the link.
8. You’re now ready to scan **QR Code Model 1**!

---
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,6 @@ If you are looking to create your own custom template of settings to use with th

5. Copy the JSON code under _Template_ and paste it into your own JSON file, or you can download the template JSON file straight from the demo.

6. The template you downloaded is currently Barcode Reader version 9 template and the latest version is version 10. Use the [TemplateConverter Tool](https://download2.dynamsoft.com/dcv/TemplateConverter.zip) to convert the template to Barcode Reader version 10 compatible template.
6. The template you downloaded is currently Barcode Reader version 9/version 10 template and the latest version is version 11. Use the [TemplateConverter Tool](https://www.dynamsoft.com/tools/template-upgrade/) to convert the template to Barcode Reader version 11 compatible template.

And with that, you have your own template to use with the `InitSettingsFromFile` method!
2 changes: 1 addition & 1 deletion barcode-reader/web/camera/check-camera.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## version 10 or recent
## version 10 or Latest Version
In version 10, use the `dynamsoft camera enhancer` to utilize the [testCameraAccess](https://www.dynamsoft.com/camera-enhancer/docs/web/programming/javascript/api-reference/camera-control.html#testCameraAccess) method to check the camera status programmatically.


Expand Down
2 changes: 1 addition & 1 deletion barcode-reader/web/camera/delay-when-open-camera.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
### 1. Invoke loadWasm
Preload `BarcodeReader` or other specified module proactively to save time on the initial decoding by skipping the module loading at the time of instance creation.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
```javascript
let startScanBtn = document.getElementById("StartScanning"); // double check the ID of the button
```
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Verson 10
## Version 10 or Latest Version
SingleFrameMode can be enabled by calling the api from the camera enhancer module. check
[singleFrameMode](https://www.dynamsoft.com/camera-enhancer/docs/web/programming/javascript/api-reference/acquisition.html#singleframemode) for detailed information.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
- One method is to raise the value of [minResultConfidence](../api-reference/interfaces/simplified-barcode-reader-settings.md) of the `SimplifiedCaptureVisionSettings` interface of the capture vision router module. It is set to `30` by default.
## Version 10 or Latest Version
- One method is to raise the value of [minResultConfidence](https://www.dynamsoft.com/capture-vision/docs/web/programming/javascript/api-reference/capture-vision-router/interfaces/simplified-capture-vision-settings.html?product=dbr&lang=javascript#minresultconfidence) of the `SimplifiedCaptureVisionSettings` interface of the capture vision router module. It is set to `30` by default.

- If the issue has to do with the length of the text result, you can try setting a minimum length for the barcode text(s) that are returned by the SDK. By setting the [minBarcodeTextLength](../api-reference/interfaces/simplified-barcode-reader-settings.md) property of the `SimplifiedCaptureVisionSettings` interface of the capture vision router module, the SDK can ignore results that are consistently coming out shorter than expected. It is set to `0` by default.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
Preload `BarcodeReader` or other specified module proactively to save time on the initial decoding by skipping the module loading at the time of instance creation.

```javascript
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
The intermeddiate results can be retrieved using the [IntermediateResultManager]({{ site.dcvb_js_api }}capture-vision-router/intermediate-result-manager.html)


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ needAutoGenerateSidebar: false

Yes, the JavaScript SDK supports reading from a file in local memory.

## Version 10.x
## Version 10 or Latest Version
```javascript
let router = await Dynamsoft.CVR.CaptureVisionRouter.createInstance();
// Use the router to perform a job.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

You can scan a US driver's license to get all of these details using our SDK. The best way to do so is to follow our pre-built driver license sample for the JavaScript edition, which can be found in the [code gallery](https://github.com/Dynamsoft/barcode-reader-javascript-demo). This sample can also be found in the `samples\4.use-case` folder of the JavaScript package download (via the Dynamsoft [free trial download](https://www.dynamsoft.com/barcode-reader/downloads)).
You can scan a US driver's license to get all of these details using our SDK. The best way to do so is to follow our pre-built driver license sample for the JavaScript edition, which can be found in the [code gallery](https://github.com/Dynamsoft/barcode-reader-javascript-samples/tree/main/foundational-api-samples/use-case/read-a-drivers-license).
4 changes: 2 additions & 2 deletions barcode-reader/web/configuration/upgrade-old-to-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

- If you are performing a **major upgrade** by upgrading from one major version to another (7.x -> 8.x), the primary contact of the license must get in touch with Dynamsoft Support by sending an email to [support@dynamsoft.com](mailto:support@dynamsoft.com) and request to upgrade their valid annual license. If you own several licenses, please specify if all or a specific subset needs to be upgraded. Once the request is received, the upgrade is processed within one business day.
- If you are performing a **major upgrade** by upgrading from one major version to another (10.x -> 11.x), the primary contact of the license must get in touch with Dynamsoft Support by sending an email to [support@dynamsoft.com](mailto:support@dynamsoft.com) and request to upgrade their valid annual license. If you own several licenses, please specify if all or a specific subset needs to be upgraded. Once the request is received, the upgrade is processed within one business day.

- If you would like to do a **minor upgrade** (8.0 -> 8.1.1) then there is no need to send an email for an upgrade as the license doesn't need to be upgraded between minor versions. All you need to do is simply reference the newer version or download a copy of the new version.
- If you would like to do a **minor upgrade** (11.0 -> 11.1) then there is no need to send an email for an upgrade as the license doesn't need to be upgraded between minor versions. All you need to do is simply reference the newer version or download a copy of the new version.

> Please also make sure to note these [changes](https://www.dynamsoft.com/barcode-reader/programming/javascript/upgrade-guide/?ver=latest) between the versions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ A copy of Dbr JS deployable files can be obtained using any of the methods menti

1. Download the DBR-JS package from the [Dynamsoft website](https://www.dynamsoft.com/barcode-reader/downloads) or from the [Dynamsoft Customer Portal](https://www.dynamsoft.com/customer/download) (Download Products tab on the left hand side)
2. Install the library via `npm`
### version 10
### version 10 or Latest Version
you will need to install dependencies along with the barcode reader sdk
dynamsoft-barcode-reader,
dynamsoft-camera-enhancer
Expand Down
2 changes: 1 addition & 1 deletion barcode-reader/web/debug/check-current-version.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## For version 10
## For version 10 or Latest Version
- Check the version of Barcode Reader module
```javascript
Dynamsoft.DBR.BarcodeReaderModule.getVersion()
Expand Down
2 changes: 1 addition & 1 deletion barcode-reader/web/debug/get-sdk-logs.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
The SDK can provide logs via the `Core` module.
```javascript
Dynamsoft.Core.CoreModule.onLog = console.log;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
`updateVideoSettings` is used to update the [MediaStreamConstraints](https://developer.mozilla.org/en-US/docs/Web/API/Media_Streams_API/Constraints) that define most of the video information such as width, height, and the camera facingMode (i.e. front or rear camera).

`updateSettings` is used to update the [SimplifiedSettings](https://www.dynamsoft.com/capture-vision/docs/web/programming/javascript/api-reference/capture-vision-router/interfaces/simplified-capture-vision-settings.html?product=dbr&lang=javascript) interface. It updates the runtime settings with a given template object.
Expand Down
2 changes: 1 addition & 1 deletion barcode-reader/web/scan-setting/remove-duplicates.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

## Version 10
## Version 10 or Latest Version
If you're experiencing more scans usage than expected with the barcode reading SDK, use the below strategies to address this issue effectively:

### 1. Donot count identical Result
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ needAutoGenerateSidebar: false
# Why am I unable to scan an Aztec code in the helloworld sample?

[<< Back to FAQ index](index.md)
# Version 10
## Version 10 or Latest Version
```javascript
let settings = await router.getSimplifiedSettings("ReadSingleBarcode");
settings.barcodeSettings.barcodeFormatIds =
Expand Down
37 changes: 37 additions & 0 deletions general/avoid-incorrect-barcode-results.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,40 @@ needAutoGenerateSidebar: false

- One method is to raise the value of [minResultConfidence](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/interface/RuntimeSettings.html#minresultconfidence) of the `RuntimeSettings` to a value of 50 or higher. It is set to 30 by default.
- If the issue has to do with the length of the text result, you can try setting a minimum length for the barcode text(s) that are returned by the SDK. By setting the [minBarcodeTextLength](https://www.dynamsoft.com/barcode-reader/docs/web/programming/javascript/api-reference/interface/RuntimeSettings.html#minbarcodetextlength) property of the `RuntimeSettings`, the SDK can ignore results that are consistently coming out shorter than expected.
---

> **Notice (Temporary Issue)**
> This is a known issue in the current release and will be fixed in the next version.
>
> As a temporary solution, please set `IncludeTrailingCheckDigit` to `0` in the `BarcodeFormatSpecification` for Code128.
> This will prevent the SDK from returning the trailing check digit.

### CODE_128 decoding returns an extra byte?

When using DBR v11, you may notice that decoding a **CODE_128** barcode returns one extra byte at the end if you call `item.get_bytes()`.

**Cause**
By default, DBR includes the trailing check digit for CODE_128 in the decoded byte results.

**Solution**
Set `IncludeTrailingCheckDigit` to `0` in the `BarcodeFormatSpecification` for Code128.

**Example JSON Configuration**

```json
{
"BarcodeFormatSpecificationOptions": [
{
"Name": "bfs1",
"BarcodeFormatIds": [
"BF_CODE_128"
],
"MinResultConfidence": 30,
"RequireStartStopChars": 1,
"ReturnPartialBarcodeValue": 1,
"VerifyCheckDigit": 0,
"IncludeTrailingCheckDigit": 0
}
],
#...Other Settings
}
38 changes: 38 additions & 0 deletions general/avoid-incorrect-results.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,41 @@ needAutoGenerateSidebar: false
[<< Back to FAQ index](index.md)

One way to avoid this is to set the [minBarcodeTextLength](https://www.dynamsoft.com/barcode-reader/docs/server/programming/cplusplus/api-reference/simplified-barcode-reader-settings.html#:~:text=int%20minResultConfidence%3B-,int%20minBarcodeTextLength%3B,-char%20barcodeTextRegExPattern%5B) in [SimplifiedBarcodeReaderSettings](https://www.dynamsoft.com/barcode-reader/docs/server/programming/cplusplus/api-reference/simplified-barcode-reader-settings.html#:~:text=SimplifiedBarcodeReaderSettings-,SimplifiedBarcodeReaderSettings,-The%20SimplifiedBarcodeReaderSettings%20struct) of [SimplifiedCaptureVisionSettings](https://www.dynamsoft.com/capture-vision/docs/server/programming/cplusplus/api-reference/capture-vision-router/structs/simplified-capture-vision-settings.html?product=dbr&repoType=server) to the correct length that the barcode results should be. Say that the barcode results should at least be 10 characters long, and the results are sometimes coming out with just 6 or 7 characters. By setting the minBarcodeTextLength to 10, the SDK will ignore results that are shorter than 10 characters.

---

> **Notice (Temporary Issue)**
> This is a known issue in the current release and will be fixed in the next version.
>
> As a temporary solution, please set `IncludeTrailingCheckDigit` to `0` in the `BarcodeFormatSpecification` for Code128.
> This will prevent the SDK from returning the trailing check digit.

### CODE_128 decoding returns an extra byte?

When using DBR v11, you may notice that decoding a **CODE_128** barcode returns one extra byte at the end if you call `item.get_bytes()`.

**Cause**
By default, DBR includes the trailing check digit for CODE_128 in the decoded byte results.

**Solution**
Set `IncludeTrailingCheckDigit` to `0` in the `BarcodeFormatSpecification` for Code128.

**Example JSON Configuration**

```json
{
"BarcodeFormatSpecificationOptions": [
{
"Name": "bfs1",
"BarcodeFormatIds": [
"BF_CODE_128"
],
"MinResultConfidence": 30,
"RequireStartStopChars": 1,
"ReturnPartialBarcodeValue": 1,
"VerifyCheckDigit": 0,
"IncludeTrailingCheckDigit": 0
}
],
#...Other Settings
}
94 changes: 93 additions & 1 deletion general/supported-barcode-formats.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,96 @@ needAutoGenerateSidebar: false

[<< Back to FAQ index](index.md)

The full list of supported barcode formats can be found [here](https://www.dynamsoft.com/barcode-reader/docs/core/introduction/?ver=latest#supported-barcode-formats).

Most common barcode formats are enabled by default. The full list of supported barcode formats can be found [here](https://www.dynamsoft.com/barcode-reader/docs/core/introduction/?ver=latest#supported-barcode-formats).

However, please note that the following formats require **manual configuration** before they can be decoded:
- **Code 32**
- **Matrix 2 of 5**
- **Telepen**

### Step-by-Step Guide

#### Step 1. Configure Barcode Formats
Update your code to explicitly enable **only the licensed formats**. Here are examples for enabling **Multiple Formats**(Use bitwise OR (|) to combine formats):

<div class="sample-code-prefix template2"></div>
>- Javascript
>- Objective-C
>- Swift
>- Android
>- Python
>- C++
>- C#
>
>
```javascript
let settings = await router.getSimplifiedSettings("ReadSingleBarcode");
// Enable QR Code and OneD
settings.barcodeSettings.barcodeFormatIds =
Dynamsoft.DBR.EnumBarcodeFormat.BF_MATRIX_25 | Dynamsoft.DBR.EnumBarcodeFormat.BF_CODE_32 | Dynamsoft.DBR.EnumBarcodeFormat.TELEPEN;
await router.updateSettings("ReadSingleBarcode", settings);
await router.startCapturing("ReadSingleBarcode");
```
>
```objc
DSBarcodeScannerConfig *config = [[DSBarcodeScannerConfig alloc] init];
config.barcodeFormats = DSBarcodeFormatQRCode | DSBarcodeFormatOned; ;
```
>
```swift
let config = BarcodeScannerConfig()
config.barcodeFormats = [.oneD, .qrCode]
```
>
```java
try {
// Obtain current runtime settings. `cvr` is an instance of `CaptureVisionRouter`.
// Here we use `EnumPresetTemplate.PT_READ_BARCODES` as an example. You can change it to your own template name or the name of other preset template.
SimplifiedCaptureVisionSettings captureVisionSettings = cvr.getSimplifiedSettings(EnumPresetTemplate.PT_READ_BARCODES);
captureVisionSettings.barcodeSettings.barcodeFormatIds = EnumBarcodeFormat.BF_MATRIX_25 | EnumBarcodeFormat.BF_CODE_32 | EnumBarcodeFormat.TELEPEN;
// Update the settings. Remember to specify the same template name you used when getting the settings.
cvr.updateSettings(EnumPresetTemplate.PT_READ_BARCODES, captureVisionSettings);
} catch (CaptureVisionRouterException e) {
e.printStackTrace();
}
```
>
```python
cvr_instance = CaptureVisionRouter()
# Obtain current runtime settings of `CCaptureVisionRouter` instance.
err_code, err_str, settings = cvr_instance.get_simplified_settings(EnumPresetTemplate.PT_READ_BARCODES.value)
# Specify the barcode formats by enumeration values.
# Use "|" to enable multiple barcode formats at one time.
settings.barcode_settings.barcode_format_ids = EnumBarcodeFormat.BF_MATRIX_25.value | EnumBarcodeFormat.BF_CODE_32.value | EnumBarcodeFormat.TELEPEN.value
# Update the settings.
err_code, err_str = cvr_instance.update_settings(EnumPresetTemplate.PT_READ_BARCODES.value, settings)
```
>
```c++
char szErrorMsg[256] = {0};
// Obtain current runtime settings of `CCaptureVisionRouter` instance.
CCaptureVisionRouter* cvr = new CCaptureVisionRouter;
SimplifiedCaptureVisionSettings settings;
cvr->GetSimplifiedSettings(CPresetTemplate::PT_READ_BARCODES, &settings);
// Specify the barcode formats by enumeration values.
// Use "|" to enable multiple barcode formats at one time.
settings.barcodeSettings.barcodeFormatIds = BF_MATRIX_25 | BF_CODE_32 | TELEPEN;
// Update the settings.
cvr->UpdateSettings(CPresetTemplate::PT_READ_BARCODES, &settings, szErrorMsg, 256);
```
>
```csharp
using (CaptureVisionRouter cvr = new CaptureVisionRouter())
{
SimplifiedCaptureVisionSettings settings;
string errorMsg;
// Obtain current runtime settings of `CCaptureVisionRouter` instance.
cvr.GetSimplifiedSettings(PresetTemplate.PT_READ_BARCODES, out settings);
// Specify the barcode formats by enumeration values.
// Use "|" to enable multiple barcode formats at one time.
settings.barcodeSettings.barcodeFormatIds = (ulong)(EnumBarcodeFormat.BF_MATRIX_25 | EnumBarcodeFormat.BF_CODE_32 | EnumBarcodeFormat.TELEPEN;
// Update the settings.
cvr.UpdateSettings(PresetTemplate.PT_READ_BARCODES, settings, out errorMsg);
}
```
Loading
Loading