Skip to content

update to internal commit ec0f4b7a #888

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 2, 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
2 changes: 1 addition & 1 deletion articles/extended-usage/dynamsoft-service-configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,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.indepth}}features/initialize.html#creating-the-webtwain-instance) in Service mode.
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.

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

Expand Down
1 change: 1 addition & 0 deletions articles/extended-usage/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ This set of guides builds on the fundamental features covered in the standard us
## Table of Contents

- [Advanced DWT Initialization]({{site.extended-usage}}advanced-initialization.html)
- [Loading Documents from Files]({{site.extended-usage}}file-import.html)
- [Configuring System Messages]({{site.extended-usage}}system-message-configuration.html)
- [Set Up the Dynamic Web TWAIN Service]({{site.extended-usage}}dynamsoft-service-configuration.html)
- [UI Customization]({{site.extended-usage}}ui-customization.html)
Expand Down
2 changes: 0 additions & 2 deletions articles/general-usage/server-deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,6 @@ If you wish to use an absolute path to include the library, this is supported.
<script src="https://www.dynamsoft.com/dwt/demo/Resources/dynamsoft.webtwain.config.js"></script>
```

> Note: If you want to use the [Camera module]({{site.indepth}}features/Input.html#use-mediadevices-cameras), please make sure the absolute path stays in the same domain to avoid cross-origin issues.

#### Change ResourcePath using a relative path

If you do not wish to use an absolute path, you can [change the reference path]({{site.faq}}change-reference-path.html) to a relative path.
Expand Down
8 changes: 4 additions & 4 deletions articles/hello-world/editing.md
Original file line number Diff line number Diff line change
Expand Up @@ -212,9 +212,9 @@ If you would like to review any of the previous steps, you can review:

<!-- - [Initializing the environment]({{site.getstarted}}initialize.html) -->

- [Scanning an image]({{site.getstarted}}scanning.html)
- [Uploading images to the server]({{site.getstarted}}uploading.html)
- [Setting scan parameters]({{site.getstarted}}scansettings.html)
- [Scanning an image]({{site.hello-world}}scanning.html)
- [Uploading images to the server]({{site.hello-world}}uploading.html)
- [Setting scan parameters]({{site.hello-world}}scan-settings.html)

# Next Article

Expand All @@ -223,6 +223,6 @@ Now that you had a chance to look at what DWT can do, you can learn about how to
<!-- << Insert what goes next >> -->

<!--
- [Customizing your scan settings]({{site.getstarted}}scansettings.html)
- [Customizing your scan settings]({{site.getstarted}}scan-settings.html)
- [Review HelloWorld]({{site.getstarted}}helloworld.html)
- [Review Uploading Documents]({{site.getstarted}}uploading.html) -->
4 changes: 2 additions & 2 deletions articles/hello-world/uploading.md
Original file line number Diff line number Diff line change
Expand Up @@ -169,11 +169,11 @@ Once an image has been acquired, click the upload button.You should receive the

<!-- If you need a refresher on creating the base project, please review [initalizing the environment]({{site.getstarted}}initialize.html). -->

You can review scanning an image with DWT [here]({{site.getstarted}}scanning.html).
You can review scanning an image with DWT [here]({{site.hello-world}}scanning.html).

# Next Article

Now that HelloWorld can both scan and upload images, the next step is [specifying scan parameters]({{site.getstarted}}scansettings.html) to control image scanning methods directly through the API.
Now that HelloWorld can both scan and upload images, the next step is [specifying scan parameters]({{site.hello-world}}scan-settings.html) to control image scanning methods directly through the API.

<!-- // var url = Dynamsoft.Lib.detect.ssl ? "https://" : "http://";
// url += location.hostname;
Expand Down
2 changes: 1 addition & 1 deletion faq/image-viewer-object-defined.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ permalink: /faq/image-viewer-object-defined.html

## Where is the image viewer object defined?

By default, Dynamic Web TWAIN has a viewer component that helps to view data available in the buffer. When you <a href="{{site.indepth}}features/initialize.html#creating-the-webtwain-instance" target="_blank">create an instance of Web Twain</a>, the viewer is created automatically with its default available settings. You can customize the viewer settings according to your requirements and replace the default viewer with your customized viewer settings.
By default, Dynamic Web TWAIN has a viewer component that helps to view data available in the buffer. When you <a href="{{site.extended-usage}}advanced-initialization.html#instantiating-webtwain-without-onwebtwainready" target="_blank">create an instance of Web Twain</a>, the viewer is created automatically with its default available settings. You can customize the viewer settings according to your requirements and replace the default viewer with your customized viewer settings.
You can refer to this <a href="{{site.indepth}}features/viewer.html#create-the-viewer" target="_blank">link</a> to read in details about the steps to create/modify the viewer.
2 changes: 1 addition & 1 deletion info/api/WebTwain_Buffer.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ permalink: /info/api/WebTwain_Buffer.html

# {WebTwainObject} Buffer Manage

The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.indepth}}features/initialize.html#creating-the-webtwain-instance).
The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.extended-usage}}advanced-initialization.html#instantiating-webtwain-without-onwebtwainready).

**Methods**

Expand Down
2 changes: 1 addition & 1 deletion info/api/WebTwain_Edit.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ permalink: /info/api/WebTwain_Edit.html

# {WebTwainObject} Edit

The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.indepth}}features/initialize.html#creating-the-webtwain-instance).
The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.extended-usage}}advanced-initialization.html#instantiating-webtwain-without-onwebtwainready).

**Methods**

Expand Down
2 changes: 1 addition & 1 deletion info/api/WebTwain_IO.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ permalink: /info/api/WebTwain_IO.html

# {WebTwainObject} IO

The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.indepth}}features/initialize.html#creating-the-webtwain-instance).
The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.extended-usage}}advanced-initialization.html#instantiating-webtwain-without-onwebtwainready).

**Methods**

Expand Down
2 changes: 1 addition & 1 deletion info/api/WebTwain_Util.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ permalink: /info/api/WebTwain_Util.html

# {WebTwainObject} Util

The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.indepth}}features/initialize.html#creating-the-webtwain-instance).
The properties and methods on this page live in the namespace {WebTwainObject}. {WebTwainObject} denotes the `WebTwain` instance. Learn about [how to create a web twain object]({{site.extended-usage}}advanced-initialization.html#instantiating-webtwain-without-onwebtwainready).

**Methods**

Expand Down
5 changes: 4 additions & 1 deletion info/api/interfaces.md
Original file line number Diff line number Diff line change
Expand Up @@ -1677,7 +1677,10 @@ interface ReaderOptions {

- [`EnumDWT_ConvertMode`]({{site.info}}api/Dynamsoft_Enum.html#dynamsoftdwtenumdwt_convertmode)


> Note:Rendering Logic When Two or More of the Following Properties Are Specified — maxWidth, maxHeight, and resolution:
- Calculates the target image dimensions based on the original PDF page size and the specified resolution (DPI).
- When both maxWidth and maxHeight are set, the more restrictive constraint is applied to ensure the final image does not exceed either maximum.
- If the calculated dimensions exceed the specified maxWidth or maxHeight, the page is scaled down proportionally to fit within those constraints while preserving the original aspect ratio. This results in a lower effective resolution.

### PDFWSettings

Expand Down
13 changes: 7 additions & 6 deletions info/schedule/Stable.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,16 @@ permalink: /info/schedule/Stable.html
- **Greatly expanded support for the [RESTful Dynamic Web TWAIN Service]({{ site.extended-usage }}restful-api.html).**
- **PDF Handling**:
- Added new PDF Rasterizer Add-On API [`preserveUnmodifiedOnSave`]({{ site.api }}interfaces.html#readeroptions) to preserve the size of unmodified PDF pages when saving.
- Added new PDF Rasterizer Add-On API [`IsRasterizationRequired()`]({{ site.api }}Addon_PDF.html#israsterizationrequired). This API returns true if the PDF Rasterizer Add-On is needed to process the PDF. Note that this requires a license for the PDF Rasterizer Add-On.
- **Cross-platform support**: Added macOS and Linux platform support for DWT Barcode Reader Add-On version 9.6.
- Added new PDF Rasterizer Add-On API [`IsRasterizationRequired()`]({{ site.api }}Addon_PDF.html#israsterizationrequired). This API returns true if the PDF file contains content other than one image per page. Please note that while invoking this API does not require a license for the PDF Rasterizer Add-On, a license is required to perform actual rasterization of the PDF for viewing purposes.
- **Cross-platform support**: Added macOS and Linux platform support for DWT Barcode Reader Add-On.
- **Error messages**: Added more informative error messages with the new [`ErrorCause`]({{ site.api }}WebTwain_Util.html#errorcause) API.
- **Keyboard accessibility**: Added Tab key keyboard navigation in the DWT `Viewer`. The browser now shows a focus outline on the `Viewer` upon tabbing into the `Viewer`, which can be disabled with the new [`{WebTwainObject}.Viewer.disableFocusOutline`]({{ site.api }}WebTwain_Viewer.html#disablefocusoutline) API. (this property is `true` by default, i.e. disables the outline)

### Improvements

- **Security enhancements**: updated third-party libraries to enhance security.
- **Image rasterization logic**: when the `ReaderOptions.RenderOptions` properties [`ReaderOptions.renderOptions.maxWidth`, `maxHeight` and `resolution`]({{ site.api }}interfaces.html#readeroptions) are set, if the dimensions of the rendered image exceed the maximum width and height, use the resolution applied during the image rendering process rather than the set resolution.
- **Image rasterization logic**: The logic is optimized when two or all of the following properties are specified in [`ReaderOptions.RenderOptions`: `maxWidth`, `maxHeight`, and `resolution`]({{ site.api }}interfaces.html#readeroptions).

- **Renamed the Dynamsoft Service to Dynamic Web TWAIN Service**.
- **New Dynamic Web TWAIN Service installation path for Windows**: moved installation out of `SysWOW64` and `System32` on Windows to prevent rare false positive antivirus scans.
- New 64-bit system-wide installation location: `C:\Program Files (x86)\Dynamsoft\Dynamic Web TWAIN Service 19`
Expand All @@ -46,9 +47,9 @@ permalink: /info/schedule/Stable.html

### Removed Features

- **Dropped support for the PDF Compressor Add-On.**
- **Dropped out-of-the-box support for ActiveX.**
- **Dropped support for 32-bit macOS**: now only supporting macOS versions 10.15 and higher.
- **Discontinued support for the PDF Compressor Add-On.**
- **Discontinued out-of-the-box support for ActiveX.**
- **Discontinued support for 32-bit macOS**: now only supporting macOS versions 10.15 and higher.
- **Discontinued Android support.**

### Bug Fixes
Expand Down