diff --git a/assets/imgs/thumbnail-viewer-event-demo.jpg b/assets/imgs/thumbnail-viewer-event-demo.jpg
new file mode 100644
index 00000000..699e58a1
Binary files /dev/null and b/assets/imgs/thumbnail-viewer-event-demo.jpg differ
diff --git a/faq/debug-on-online-demo.md b/faq/debug-on-online-demo.md
index 9530b9f2..0f242daf 100644
--- a/faq/debug-on-online-demo.md
+++ b/faq/debug-on-online-demo.md
@@ -18,7 +18,6 @@ With the widespread application of the Dynamic Web TWAIN SDK in the market, more
**Step 1:**
Visit Dynamic Web TWAIN Online Demo: [https://demo.dynamsoft.com/web-twain/](https://demo.dynamsoft.com/web-twain/)
-Open your web browser console (f12 or right clicking and inspecting) and navigate to the console tab. From here we can make calls directly into the browser.
**Step 2:**
@@ -38,4 +37,4 @@ And you can test the API as much as you want. Let's take the [ConvertToBase64](h

-Now that you've had the opportunity to preview how the DWT API operates in the web application, you can explore more features by reviewing the [API documentation]({{site.info}}api/).
+Now that you've had the opportunity to preview how the DWT API operates in the web application, you can explore more features by reviewing the [API documentation]({{site.info}}api/).
\ No newline at end of file
diff --git a/faq/download-service-only.md b/faq/download-service-only.md
index 0675e7a9..289e5289 100644
--- a/faq/download-service-only.md
+++ b/faq/download-service-only.md
@@ -32,4 +32,4 @@ For Linux users, please choose ".rpm" or ".deb" installer accordingly
**Step 3:**
Click on the "View Raw" button, it will start to download the installer.
-
+
\ No newline at end of file
diff --git a/faq/flexible-to-custom-license.md b/faq/flexible-to-custom-license.md
index de8146de..1728bc3e 100644
--- a/faq/flexible-to-custom-license.md
+++ b/faq/flexible-to-custom-license.md
@@ -13,4 +13,4 @@ permalink: /faq/flexible-to-custom-license.html
## Are you flexible to discuss custom licensing models?
-Yes. We understand our standard options may not cover your need, so we are very flexible with different licensing metrics to best serve your business. Please submit your request via this form or directly contact us.
+Yes. We understand our standard options may not cover your need, so we are very flexible with different licensing metrics to best serve your business. Please submit your request via this form or directly contact us.
diff --git a/info/api/Addon_PDF.md b/info/api/Addon_PDF.md
index 7e72566a..43ab7da5 100644
--- a/info/api/Addon_PDF.md
+++ b/info/api/Addon_PDF.md
@@ -305,7 +305,7 @@ Use this method before you import a PDF into the viewer with methods such as Body Parameters
-
-```json
-{
- "settings": {
- "minBlockHeight": 20,
- "maxBlockHeight": 30
- },
- "source": "https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282"
-}
-```
-
#### Parameters
|Name|Location|Type|Required|Restrictions|Description|
|---|---|---|---|---|---|
|`X-DICS-LICENSE-KEY`|header|`string`| yes | none |A DWT license key with the Barcode Reader and RESTful API module. Contact our [sales team](https://www.dynamsoft.com/company/contact/) for a full license, or get a [30-day free trial](https://www.dynamsoft.com/web-twain/downloads/).|
-|`body`|body|[`CreateProcessOptions`](#createprocessoptions)| no |none|
+|`source`|body|`string`| yes |Scan job URL |Image source URL from the scan job, e.g. `https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282`.|
+|`settings`|body|`string`| Valid barcode reading template JSON - see [`RuntimeSettings`]({{ site.api }}Interfaces.html#runtimesettings) for more details |no| Barcode reader template settings. Defaults to the `BestCoverage` setting by default. The basic settings are `BestCoverage`, `BestSpeed`, and `Balance`. Read the Barcode Reader Add-On guide for details on [basic settings]({{ site.extended-usage }}barcode-processing.html#built-in-modes) and advanced [scanning templates]({{ site.extended-usage }}barcode-processing.html#set-the-runtime-settings-using-json).|
#### Request Example:
@@ -1931,23 +1920,12 @@ Create a new document process to check if a scanned page is blank.
Blank page detection is **only supported on Windows**.
-> Body Parameters
-
-```json
-{
- "settings": {
- "minBlockHeight": 20,
- "maxBlockHeight": 30
- },
- "source": "https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282"
-}
-```
-
#### Parameters
|Name|Location|Type|Required|Restrictions|Description|
|---|---|---|---|---|---|
|`source`|body|`string`| yes |Scan job URL |Image source URL from the scan job, e.g. `https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282`.|
+|`settings`|body|[`CheckBlankSettings`](#checkblanksettings)| no |none |Maximum and minimum blemish pixel height detection thresholds.|
#### Request Example:
@@ -1962,6 +1940,10 @@ let myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
let raw = JSON.stringify({
+ settings: {
+ "minBlockHeight": 20,
+ "maxBlockHeight": 30
+ },
source: 'https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282',
});
@@ -2270,15 +2252,12 @@ Currently, only return log level.
|---|---|---|---|---|
|`password`|`string`|false|none|length <= 32 characters |The password of the document (32 characters max).|
-### `CreateProcessOptions`
+### `VersionInfo`
```json
{
- "settings": {
- "minBlockHeight": 20,
- "maxBlockHeight": 30
- },
- "source": "https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282"
+ "version": "20240719",
+ "compatible": true
}
```
@@ -2287,15 +2266,15 @@ Currently, only return log level.
|Name|Type|Required|Restrictions|Description|
|---|---|---|---|---|
-|`settings`|`object`|no| - `coverage`: high reading accuracy
- `speed`: high reading speed
- `balance`: balance between `coverage` and `speed`
- JSON: custom scanning template |Barcode reader template settings. Defaults to the `coverage` setting by default. The basic settings are `coverage`, `speed`, and `balance`. Read the Barcode Reader Add-On guide for details on [basic settings]({{ site.extended-usage }}barcode-processing.html#built-in-modes) and advanced [scanning templates]({{ site.extended-usage }}barcode-processing.html#set-the-runtime-settings-using-json).|
-|`source`|`string`|true|Image source URL from the scan job, e.g. `https://127.0.0.1:18623/api/device/scanners/jobs/dd40716d-48d1-4d32-89f7-1d53f9665d91/next-page?page=19522d0c5282`.||
+|`version`|`string`|false|none|server api version.|
+|`compatible`|`boolean`|false|none|server is compatible with the client.|
-### `VersionInfo`
+### `CheckBlankSettings`
```json
-{
- "version": "20240719",
- "compatible": true
+"settings": {
+ "minBlockHeight": 20,
+ "maxBlockHeight": 30
}
```
@@ -2304,8 +2283,8 @@ Currently, only return log level.
|Name|Type|Required|Restrictions|Description|
|---|---|---|---|---|
-|`version`|`string`|false|none|server api version.|
-|`compatible`|`boolean`|false|none|server is compatible with the client.|
+|`minBlockHeight`|`number`|true|0 < `minBlockHeight` <= `maxBlockHeight`|Minimum blemish pixel height detection threshold.|
+|`maxBlockHeight`|`number`|true|`minBlockHeight` <= `maxBlockHeight`|Maximum blemish pixel height detection threshold.|
### `ScannerJobStatus`
diff --git a/info/schedule/Stable.md b/info/schedule/Stable.md
index ce470671..637d335f 100644
--- a/info/schedule/Stable.md
+++ b/info/schedule/Stable.md
@@ -17,7 +17,7 @@ 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 }}Addon_PDF.html#setreaderoptions) to preserve the size of text-based PDFs when loading and re-saving without modifying the pages with DWT.
+ - 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.
- **Error messages**: Added more informative error messages with the new [`ErrorCause`]({{ site.api }}WebTwain_Util.html#errorcause) API.
@@ -26,9 +26,9 @@ permalink: /info/schedule/Stable.html
### Improvements
- **Security enhancements**: updated third-party libraries to enhance security.
-- **Image rasterization logic**: when both [`ReaderOptions.renderOptions.maxWidth/ ReaderOptions.renderOptions.maxHeight and resolution`]({{ site.api }}Addon_PDF.html#setreaderoptions) 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**: when both [`ReaderOptions.renderOptions.maxWidth/ ReaderOptions.renderOptions.maxHeight and resolution`]({{ site.api }}interfaces.html/setreaderoptions) 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.
- **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 installations: `C:\Program Files\Dynamsoft (x86)\Dynamic Web TWAIN Service 19`
+ - New 64-bit system-wide installations: `C:\Program Files (x86)\Dynamsoft\Dynamic Web TWAIN Service 19`
- New 32-bit system-wide installation location: `C:\Program Files\Dynamsoft\Dynamic Web TWAIN Service 19`
- Changed `ErrorString` messages associated with `ErrorCode -2003` for `HTTPUpload`-related APIs to include HTTP codes in the form of `HTTP process: {message}({HTTP status code})`, e.g. `HTTP process: OK(200)`. This change applies to `ErrorString` for the following APIs:
@@ -39,6 +39,9 @@ permalink: /info/schedule/Stable.html
- [`{WebTwainObject}.HTTPUploadAllThroughPostAsPDF()`]({{ site.api }}WebTwain_IO.html#httpuploadallthroughpostaspdf)
- [`{WebTwainObject}.HTTPUploadThroughPostAsMultiPagePDF()`]({{ site.api }}WebTwain_IO.html#httpuploadthroughpostasmultipagepdf)
- [`{WebTwainObject}.HTTPUploadThroughPostAsMultiPageTIFF()`]({{ site.api }}WebTwain_IO.html#httpuploadthroughpostasmultipagetiff)
+- **Enhance the customizability of thumbnail viewer**: add a position property to its [event]({{ site.api }}interfaces.html#thumbnailviewerevent) to facilitate the customization. For example, we can add a delete icon when the mouse is over it.
+
+ 
### Removed Features