All Projects → Dynamsoft → Dynamic-Web-TWAIN

Dynamsoft / Dynamic-Web-TWAIN

Licence: other
Dynamic Web TWAIN for package managers

Projects that are alternatives of or similar to Dynamic-Web-TWAIN

next-gen-ui
www.npmjs.com/package/next-gen-ui
Stars: ✭ 24 (-31.43%)
Mutual labels:  npm-package
react-native-value-picker
Cross-Platform iOS(ish) style picker for react native.
Stars: ✭ 18 (-48.57%)
Mutual labels:  npm-package
bulk-mail-cli
Do quick, hassle-free email marketing with this small but very powerful tool! 🔥
Stars: ✭ 88 (+151.43%)
Mutual labels:  npm-package
is-safe-integer
ES2015 Number.isSafeInteger() ponyfill
Stars: ✭ 16 (-54.29%)
Mutual labels:  npm-package
github-profile-card
Simple and easy to use widget with your GitHub profile — No dependencies
Stars: ✭ 98 (+180%)
Mutual labels:  npm-package
fritz-box
📦 Promise-based JavaScript FRITZ!Box API.
Stars: ✭ 14 (-60%)
Mutual labels:  npm-package
picsort
Organize your photos by date in one click 👏
Stars: ✭ 22 (-37.14%)
Mutual labels:  npm-package
react-change-highlight
✨ a react component to highlight changes constantly ⚡️
Stars: ✭ 79 (+125.71%)
Mutual labels:  npm-package
react-daterange-picker
A react date range picker to using @material-ui. Live Demo: https://flippingbitss.github.io/react-daterange-picker/
Stars: ✭ 85 (+142.86%)
Mutual labels:  npm-package
braille
A Node module for converting text to Braille alphabet.
Stars: ✭ 18 (-48.57%)
Mutual labels:  npm-package
randoma
User-friendly pseudorandom number generator (PRNG)
Stars: ✭ 103 (+194.29%)
Mutual labels:  npm-package
kladi
Easy to use state management library for React
Stars: ✭ 24 (-31.43%)
Mutual labels:  npm-package
react-innertext
Returns the innerText of a React JSX object.
Stars: ✭ 37 (+5.71%)
Mutual labels:  npm-package
couchbase-index-manager
Command-line interface to manage Couchbase indexes, synchronizing them to index definitions.
Stars: ✭ 14 (-60%)
Mutual labels:  npm-package
add-module-exports-webpack-plugin
Add `module.exports` for Babel and TypeScript compiled code
Stars: ✭ 36 (+2.86%)
Mutual labels:  npm-package
Nodorithm
NPM package for algorithms.
Stars: ✭ 22 (-37.14%)
Mutual labels:  npm-package
skygear-SDK-JS
Skygear SDK for JavaScript
Stars: ✭ 25 (-28.57%)
Mutual labels:  npm-package
babel-plugin-source-map-support
A Babel plugin which automatically makes stack traces source-map aware
Stars: ✭ 41 (+17.14%)
Mutual labels:  npm-package
awesome-starless
A curated list of awesome repositories with few stargazers but has a huge users.
Stars: ✭ 38 (+8.57%)
Mutual labels:  npm-package
radiaSlider
circular/linear knob-style slider
Stars: ✭ 18 (-48.57%)
Mutual labels:  npm-package

Dynamic Web TWAIN SDK for Scanner and Camera

version downloads jsdelivr

Dynamic Web TWAIN is a cross-platform scanning SDK designed for web document management applications. With just a few lines of JavaScript code, you can develop robust web applications to scan documents, edit images and save them to file systems. To see it in action, please visit this online demo

Note: Dynamic Web TWAIN SDK v17.2.1 is built in this package. For more detail, check the Version Info.

Table of Contents

Supported Environments

Supported Image Capturing Devices

  • Physical Document Scanners
  • Desktop Webcam
  • Mobile Camera

Supported Web Browsers

  • Chrome
  • Firefox
  • Edge
  • Safari

Supported OSs

  • Windows
  • Linux
  • macOS
  • Android / iOS (Remote scanner or camera)

Supported CPU Architectures

  • x86/x64
  • MIPS64
  • ARM64

License Key

Installation

  • Official web site

    Dynamic Web TWAIN SDK for Windows, Linux, macOS

  • NPM

    npm install dwt

A Virtual Scanner

If you do not have a physical scanner to test on Windows, you can install a virtual scanner.

Read more here.

Deployment

Dynamic Web TWAIN relies on the files in the /dist/ folder to work. Make sure to put these files on your server and correctly refer to them by specifying the path with ResourcesPath (relative and absolute paths are both fine).

If you are making use of the CDN jsDelivr, you will still need to host the /dist/ folder somewhere on your server and refer to it by specifying the path with ResourcesPath. This is because file types like .msi are not allowed by this CDN.

Quick Start

Step 1 Create a HTML page and load dynamsoft.webtwain.min.js into your page:

<!DOCTYPE html>
<html>
<head>
 <title>Hello World</title>
 <script src="dist/dynamsoft.webtwain.min.js"></script>
</head>
<body>
</body>
</html>

Note that a relative path is used. You might want to change it based on where you are putting your code. The best practise is to put all the files on your own server and under the same domain as your web application.

Step 2 Add a script tag and make initial settings:

<!DOCTYPE html>
<html>
<head>
 <title>Hello World</title>
 <script src="dist/dynamsoft.webtwain.min.js"></script>
</head>
<body>
 <script type="text/javascript">
   Dynamsoft.DWT.ResourcesPath = "dist";
   Dynamsoft.DWT.ProductKey = 't0140cQMAA...';
   Dynamsoft.DWT.Containers = [{ ContainerId: 'dwtcontrolContainer', Width: 270, Height: 350 }];
 </script>
</body>
</html>

Note that ResourcesPath must be set in order to use the library.

  1. ResourcesPath is a relative path to where you put the directory "/dist/" and all the files in it.
  2. If you don't have a valid ProductKey, you can request a trial key to use.

Step 3 Write code to use the package to do a simple document scan

The following code demonstrates the minimum code needed to use the package. Note the addition of HTML elements as well as JavaScript code. For more sophisticated sample or demo, check out the Sample Gallery and our Github Repositories.

<!DOCTYPE html>
<html>
<head>
 <title>Hello World</title>
 <script src="dist/dynamsoft.webtwain.min.js"></script>
</head>
<body>
 <input type="button" value="Scan" onclick="AcquireImage();" />
 <div id="dwtcontrolContainer"></div>
 <script type="text/javascript">
   Dynamsoft.DWT.ResourcesPath = "dist";
   Dynamsoft.DWT.ProductKey = 't0140cQMAA...'; // Put your own key here
   Dynamsoft.DWT.Containers = [{ ContainerId: 'dwtcontrolContainer', Width: 270, Height: 350 }];
   window.onload = function () {
     Dynamsoft.DWT.Load();
   };
   var DWObject;
   function Dynamsoft_OnReady() {
     // dwtcontrolContainer is the id of the DIV to create the WebTwain instance in.
     DWObject = Dynamsoft.DWT.GetWebTwain('dwtcontrolContainer');
   }
   function AcquireImage() {
     if (DWObject) {
       DWObject.SelectSource(function () {
         DWObject.OpenSource();
         DWObject.AcquireImage(
           {
             PixelType: Dynamsoft.EnumDWT_PixelType.TWPT_RGB,
             Resolution: 200,
             IfDisableSourceAfterAcquire: true
           },
           function () {
             console.log("Successful!");
           },
           function (settings, errCode, errString) {
             alert(errString)
           }
         );
       }, function () {
         alert('SelectSource failed!');
       });
     }
   }
 </script>
</body>
</html>

Documentation

Features

Dynamsoft Service for Scanner

Features Windows Linux macOS
Supports up to TWAIN specification 2.3 ✔️
SANE compatible ✔️
Supports up to TWAIN specification 1.9; ICA compatible ✔️
Supports capturing document ✔️ ✔️ ✔️
Supports editing document ✔️ ✔️ ✔️
Optional disk caching mechanism for high volume scanning (thousands of pages) ✔️ ✔️ ✔️
Built-In Auto Document Feeder (ADF) and multiple image acquisition ✔️ ✔️ ✔️
Offers duplex scanning mode ✔️ ✔️ ✔️
Supports blank page detection ✔️ ✔️ ✔️
Supports setting up image acquisition parameters (resolution, pixel type, bit depth, brightness, contrast, page size, unit, etc.) ✔️ ✔️ ✔️
Provides native and disk file image transfer modes ✔️ ✔️ ✔️
Buffered memory transfer mode ✔️

More

WebAssembly for Camera

Features Desktop Mobile
Document capture ✔️ ✔️
Document edge detection ✔️ ✔️
Document perspective correction ✔️ ✔️
Document post-processing by filters ✔️ ✔️
Front and rear camera switching ✔️ ✔️
Dedicated image and PDF viewer ✔️ ✔️
Built-in ready-to-use UI ✔️ ✔️
SIMD and WebGL acceleration ✔️ ✔️
Multi-Format export and sharing ✔️ ✔️

More

Contact Us

Contact Dynamsoft to resolve any issue you encounter with the library.

License Agreement

https://www.dynamsoft.com/Products/WebTWAIN_License.aspx

Versions

Dynamsoft Service (DynamsoftService.exe, 64bit)

v17.2.1 (build version 1, 7, 2, 0228)

Dynamsoft Service Manager (DWASManager_17210228.dll, 64bit)

v17.2.1 (build version 17, 2, 1, 0228)

Dynamic Web TWAIN (dwt_17.2.1.0228.dll, 64bit)

v17.2.1 (build version 17, 2, 1, 0228)

Dynamsoft PDF Rasterizer (DynamicPdfRx64_11.3.0.1026.dll, 64bit)

v17.2.1 (build version 11, 3, 0, 1026)

Dynamsoft OCR Basic Engine (DynamicOCRx64_10.0.0.0618.dll, 64bit)

v17.2.1 (build version 10, 0, 0, 0618)

Dynamsoft Barcode Reader (dbrx64_8.6.0.1026.dll, 64bit)

v8.6.0 (build version 8, 6, 0, 1026)

Dynamsoft Webcam Addon (DynamicWebcamx64_15.0.0.0625.dll, 64bit)

v17.2.1 (build version 15, 0, 0, 0625)

Dynamsoft Upload Module (UploadModule_1.7.2.1026.dll, 64bit)

v17.2.1 (build version 1, 7, 2, 1026)

Changelog

Check out the release notes of the Dynamic Web TWAIN library.

Note

If you are upgrading from the old versions to V17.1+, please add the following code after Dynamsoft.DWT.ProductKey to make Dynamsoft.DWT.Load take effect.

Dynamsoft.DWT.Containers = [{ ContainerId: 'dwtcontrolContainer', Width: 270, Height: 350 }];

Otherwise, the initialization will fail.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].