Skip to content

update to internal commit 8c7852da #896

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 18, 2025
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
1 change: 0 additions & 1 deletion about/getsupport.md → _articles/about/getsupport.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ title: Dynamic Web TWAIN SDK Support
keywords: Dynamic Web TWAIN, Documentation, Support
breadcrumbText: Support
description: Dynamic Web TWAIN SDK Documentation Support Page
permalink: /about/getsupport.html
---


Expand Down
15 changes: 7 additions & 8 deletions about/index.md → _articles/about/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ title: Document Scanning SDK | Dynamic Web TWAIN Documentation
keywords: Dynamic Web TWAIN, TWAIN, About, Documentation
breadcrumbText: About Dynamic Web TWAIN
description: Dynamic Web TWAIN SDK Documentation. This will help you integrate document scanning into your app, no matter whether you are building a workflow from scratch or optimizing an existing workflow.
permalink: /about/
ignore: true
---

Expand All @@ -22,18 +21,18 @@ Being in the market for over 17 years, it has won the trust of many fortune 500

<a class="btn d-btn bgOrange hide-sm hide-xs" href="https://www.dynamsoft.com/web-twain/downloads">Download 30-Day Free Trial</a>

For more info, please check out <a href="{{site.info}}schedule/stable.html" target="_blank">DWT release history</a>.
For more info, please check out [DWT release history](/_articles/info/schedule/Stable.md){:target="_blank"}.

## Document Capture and Process

DWT makes the following tasks easy

* [Scanning documents from scanners]({{site.hello-world}}scanning.html)
* [Loading or downloading existing documents]({{site.extended-usage}}file-import.html)
* [Editing images]({{site.indepth}}features/edit.html)
* [Saving documents locally]({{site.indepth}}features/output.html#save)
* [Uploading documents to the server]({{site.indepth}}features/output.html#upload)
* [Reading barcodes]({{site.indepth}}features/barcode.html)
* [Scanning documents from scanners](/_articles/hello-world/scanning.md)
* [Loading or downloading existing documents](/_articles/extended-usage/file-import.md)
* [Editing images](/_articles/general-usage/image-processing/index.md)
* [Saving documents locally](/_articles/general-usage/image-export/index.md#save)
* [Uploading documents to the server](/_articles/general-usage/image-export/index.md#upload)
* [Reading barcodes](/_articles/extended-usage/barcode-processing.md)

## Highlights

Expand Down
1 change: 0 additions & 1 deletion about/resources.md → _articles/about/resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ title: Dynamic Web TWAIN SDK Resources
keywords: Dynamic Web TWAIN, TWAIN, Documentation, Resources
breadcrumbText: Resources
description: Dynamic Web TWAIN SDK Documentation Resources Page
permalink: /about/resources.html
---

# Resources
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ title: Dynamic Web TWAIN SDK Features - Read Barcode
keywords: Dynamic Web TWAIN, Documentation, Read Barcode
breadcrumbText: Read Barcode
description: Dynamic Web TWAIN SDK Documentation Read Barcode Page
permalink: /extended-usage/barcode-processing.html
---

# Barcode Reader
Expand All @@ -14,7 +13,7 @@ With the increasing use of barcode reading in document management systems, the B

> NOTE
>
> Barcode reading can be performed on the client side as well as the server side. For `Dynamic Web TWAIN` , we only consider client-side reading. If you are interested in reading on the server side, you can contact [Dynamsoft Support]({{site.about}}getsupport.html).
> Barcode reading can be performed on the client side as well as the server side. For `Dynamic Web TWAIN` , we only consider client-side reading. If you are interested in reading on the server side, you can contact [Dynamsoft Support](/_articles/about/getsupport.md).

## Environment

Expand All @@ -24,7 +23,7 @@ With the increasing use of barcode reading in document management systems, the B

### Step one - Include the add-on

To include this add-on is to reference the necessary JavaScript file which is included in the [resources files]({{site.faq}}what-are-the-resources-files.html).
To include this add-on is to reference the necessary JavaScript file which is included in the [resources files](/_articles/faq/what-are-the-resources-files.md).

> If you are using the [dwt package](https://www.npmjs.com/package/dwt), the barcode reader is already included in the main JavaScript file ( `dynamsoft.webtwain.min.js` or `dynamsoft.webtwain.min.mjs` ) which means you can skip this step.

Expand All @@ -34,7 +33,7 @@ To include this add-on is to reference the necessary JavaScript file which is in

### Step two - Start the reading

Now that the add-on has been referenced, we can call [`decode()`]({{site.info}}api/Addon_BarcodeReader.html#initruntimesettingswithstring) to start reading barcode(s).
Now that the add-on has been referenced, we can call [`decode()`](/_articles/info/api/Addon_BarcodeReader.md#initruntimesettingswithstring) to start reading barcode(s).

``` javascript
function readBarcodes(imageIndex) {
Expand All @@ -51,7 +50,7 @@ function readBarcodes(imageIndex) {
}
```

Note that the barcode reading does take a bit of time, so it'll help to add an indicator as mentioned in [Loading Bar and Backdrop]({{site.indepth}}features/ui.html#loading-bar-and-backdrop)
Note that the barcode reading does take a bit of time, so it'll help to add an indicator as mentioned in [Loading Bar and Backdrop](/_articles/extended-usage/ui-customization.md#loading-bar-and-backdrop)

``` javascript
function readBarcodes(imageIndex) {
Expand All @@ -76,7 +75,7 @@ function readBarcodes(imageIndex) {

### Step three - Check the result

Check the structure of the resulting object [here]({{site.info}}api/Addon_BarcodeReader.html#decode). The following code prints out the text contained in the barcode(s)
Check the structure of the resulting object [here](/_articles/info/api/Addon_BarcodeReader.md#decode). The following code prints out the text contained in the barcode(s)

``` javascript
Dynamsoft.DWT.OnWebTwainPreExecute();
Expand All @@ -98,7 +97,7 @@ DWTObject.Addon.BarcodeReader.decode(imageIndex)

Most of the time, you simply need to use the default decode method to read most of the barcode images out there. However, you may encounter some barcodes that fail to be read and sometimes you might want to limit which barcode types the reader should pick up, and more.

The runtime settings of the add-on gives you access to a wide array of customizable parameters, all of which you can check out with the method [ `getRuntimeSettings()` ]({{site.info}}api/Addon_BarcodeReader.html#getruntimesettings) and change with the method [ `updateRuntimeSettings()` ]({{site.info}}api/Addon_BarcodeReader.html#updateruntimesettings). Now to demonstrate a few typical customization scenarios:
The runtime settings of the add-on gives you access to a wide array of customizable parameters, all of which you can check out with the method [ `getRuntimeSettings()` ](/_articles/info/api/Addon_BarcodeReader.md#getruntimesettings) and change with the method [ `updateRuntimeSettings()` ](/_articles/info/api/Addon_BarcodeReader.md#updateruntimesettings). Now to demonstrate a few typical customization scenarios:

### Specify the Barcode Type(s) to Read

Expand Down Expand Up @@ -160,7 +159,7 @@ DWTObject.Addon.BarcodeReader.updateRuntimeSettings(runtimeSettings);

### Set the runtime settings using JSON

So far, we edited the values of specific runtime settings via accessing each individual setting and adjusting its value. However, the add-on also provides the developer the ability to set everything at once using a JSON string. The method is called [ `initRuntimeSettingsWithString()` ]({{site.info}}api/Addon_BarcodeReader.html#initruntimesettingswithstring).
So far, we edited the values of specific runtime settings via accessing each individual setting and adjusting its value. However, the add-on also provides the developer the ability to set everything at once using a JSON string. The method is called [ `initRuntimeSettingsWithString()` ](/_articles/info/api/Addon_BarcodeReader.md#initruntimesettingswithstring).

> Some advanced features, such as dedicated configuration of a binarization mode, are only possible when using the method `initRuntimeSettingsWithString()` .

Expand Down Expand Up @@ -281,7 +280,7 @@ DWTObject.Addon.BarcodeReader.updateRuntimeSettings('coverage').then( /*---*/ );

### Reset settings

You can always go back to the default settings with the method [ `resetRuntimeSettings()` ]({{site.info}}api/Addon_BarcodeReader.html#resetruntimesettings).
You can always go back to the default settings with the method [ `resetRuntimeSettings()` ](/_articles/info/api/Addon_BarcodeReader.md#resetruntimesettings).

## Use barcode to classify and separate documents

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ title: Dynamic Web TWAIN SDK Guide - Buffer Caching
keywords: Dynamic Web TWAIN, Documentation, Deployment, Dynamic Web TWAIN Service, caching, buffer,
breadcrumbText: Dynamic Web TWAIN Service
description: Dynamic Web TWAIN SDK Documentation Dynamic Web TWAIN Service Page
permalink: /extended-usage/buffer-caching.html
---

# Buffer Caching
Expand All @@ -16,9 +15,9 @@ The DWT image buffer is controlled by the Dynamic Web TWAIN Service(formerly kno

The DWT image buffer handles data using the `DIB` format, which take up a lot of space in memory. For example, one A4 paper scanned in 300 DPI takes around 24MB in memory, which means 2GB of physical memory can only store no more than 85 of these images. As more images are processed, more memory gets used which may pose a threat to other programs on the machine. Due to this, the disk cache function was added. After enabling disk caching, most images will be temporarily cached on the disk, while keeping some active images in the memory to maintain high performance.

The disk caching feature is enabled by default, but can be disabled by setting [`IfAllowLocalCache`]({{site.info}}api/WebTwain_Buffer.html#ifallowlocalcache) to `false` .
The disk caching feature is enabled by default, but can be disabled by setting [`IfAllowLocalCache`](/_articles/info/api/WebTwain_Buffer.md#ifallowlocalcache) to `false` .

You can also set how much memory `Dynamic Web TWAIN` can use before images start to be cached. By default, **800MB** is used. You can change it using the property [`BufferMemoryLimit`]({{site.api}}WebTwain_Buffer.html#buffermemorylimit).
You can also set how much memory `Dynamic Web TWAIN` can use before images start to be cached. By default, **800MB** is used. You can change it using the property [`BufferMemoryLimit`](/_articles/info/api/WebTwain_Buffer.md#buffermemorylimit).

> Note: All cached data is encrypted and can only be accessed by `Dynamic Web TWAIN`. When `Dynamic Web TWAIN` is unloaded (like when the browser tab refreshes or closes), the cached data is destroyed and removed from the disk automatically.

Expand All @@ -38,7 +37,7 @@ Starting from version 18.5, Dynamic Web TWAIN introduces a new feature that faci

### Create a storage folder

First of all, you need to create a storage item by [`createLocalStorage()`]({{site.info}}api/WebTwain_IO.html#createlocalstorage) which is used to save the encrypted image caches. For example,
First of all, you need to create a storage item by [`createLocalStorage()`](/_articles/info/api/WebTwain_IO.md#createlocalstorage) which is used to save the encrypted image caches. For example,

```javascript
var folderSettings = {
Expand All @@ -56,7 +55,7 @@ The local directory of the created storage folder is under

**Save image caches**

To save the specified image(s) to the storage folder, [`saveToLocalStorage()`]({{site.info}}api/WebTwain_IO.html#savetolocalstorage) method is required.
To save the specified image(s) to the storage folder, [`saveToLocalStorage()`](/_articles/info/api/WebTwain_IO.md#savetolocalstorage) method is required.

```javascript
var bExist = await DWTObject.localStorageExist(storageItemUid); // Determine whether the folder exists
Expand All @@ -76,7 +75,7 @@ else {

**Load image(s) from the storage folder**

To load the encypted image caches into Dynamic Web TWAIN again, please use the method [`loadFromLocalStorage()`]({{site.info}}api/WebTwain_IO.html#loadfromlocalstorage).
To load the encypted image caches into Dynamic Web TWAIN again, please use the method [`loadFromLocalStorage()`](/_articles/info/api/WebTwain_IO.md#loadfromlocalstorage).

```javascript
var bExist = await DWTObject.localStorageExist(storageItemUid); // Determine whether the folder exists
Expand All @@ -95,7 +94,7 @@ else {

**Remove the storage folder**

If you would like to remove the storage folder by programming, the method [`removeLocalStorage()`]({{site.info}}api/WebTwain_IO.html#removelocalstorage) can help.
If you would like to remove the storage folder by programming, the method [`removeLocalStorage()`](/_articles/info/api/WebTwain_IO.md#removelocalstorage) can help.

```javascript
var bExist = await DWTObject.localStorageExist(storageItemUid); // Determine whether the folder exists
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ title: Dynamic Web TWAIN SDK Deployment - Dynamic Web TWAIN Service
keywords: Dynamic Web TWAIN, Documentation, Deployment, Dynamic Web TWAIN Service
breadcrumbText: Dynamic Web TWAIN Service
description: Dynamic Web TWAIN SDK Documentation Dynamic Web TWAIN Service Page
permalink: /extended-usage/dynamsoft-service-configuration.html
---

# Configuring the Dynamic Web TWAIN Service
Expand Down Expand Up @@ -51,7 +50,7 @@ Access-Control-Allow-Origin=http://192.168.8.212, http://192.168.8.126:8033, htt

![Access-Control-Allow-Origin]({{site.assets}}imgs/Access-Control-Allow-Origin.png)

After configuring the origins in the `DSConfiguration.ini` file, please set [`IfCheckCORS`]({{site.info}}api/Dynamsoft_WebTwainEnv.html#ifcheckcors) to `true` in `dynamsoft.webtwain.config.js`.
After configuring the origins in the `DSConfiguration.ini` file, please set [`IfCheckCORS`](/_articles/info/api/Dynamsoft_WebTwainEnv.md#ifcheckcors) to `true` in `dynamsoft.webtwain.config.js`.

When a request comes from a different origin, a CORS error message will be displayed, both in a pop-up and in the console.

Expand All @@ -63,7 +62,7 @@ When a request comes from a different origin, a CORS error message will be displ

On a desktop, when a new user accesses a web page using Dynamic Web TWAIN SDK for the first time, he will be prompted to install the Dynamic Web TWAIN Service. This is a built-in behaviour of the library. The prompt will display the download link. Once the installer is downloaded, the installation process will take just a few seconds.

The prompt comes up when you try to [create a WebTwain instance]({{site.extended-usage}}advanced-initialization.html#instantiating-webtwain-without-onwebtwainready) in Service mode.
The prompt comes up when you try to [create a WebTwain instance](/_articles/extended-usage/advanced-initialization.md#instantiating-webtwain-without-onwebtwainready) in Service mode.

![Initialization]({{site.assets}}imgs/Initialization-1.png)

Expand Down Expand Up @@ -93,7 +92,7 @@ If Dynamic Web TWAIN Service is not installed, users may receive the error 'The

## Related Resources:

* <a href="{{site.faq}}what-does-dynamsoft-service-do-on-end-user-machine.html" target="_blank">What does Dynamic Web TWAIN Service do?</a>
* <a href="{{site.faq}}service-prompting-to-install-repeatedly.html" target="_blank">I have installed the Dynamic Web TWAIN Service on an end-user machine but still got asked to install it repeatedly. Why?</a>
* <a href="{{site.faq}}how-to-uninstall-dynamsoft-service.html" target="_blank">How to uninstall Dynamic Web TWAIN Service?</a>
* <a href="{{site.faq}}can-i-install-dynamsoft-service-silently.html" target="_blank">Can I install Dynamic Web TWAIN Service silently?</a>
* [What does Dynamic Web TWAIN Service do?](/_articles/faq/what-does-dynamsoft-service-do-on-end-user-machine.md){:target="_blank"}
* [I have installed the Dynamic Web TWAIN Service on an end-user machine but still got asked to install it repeatedly. Why?](/_articles/faq/service-prompting-to-install-repeatedly.md){:target="_blank"}
* [How to uninstall Dynamic Web TWAIN Service?](/_articles/faq/how-to-uninstall-dynamsoft-service.md){:target="_blank"}
* [Can I install Dynamic Web TWAIN Service silently?](/_articles/faq/can-i-install-dynamsoft-service-silently.md){:target="_blank"}
Loading