PHPackages                             scannerjs/scanner.js - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PDF &amp; Document Generation](/categories/documents)
4. /
5. scannerjs/scanner.js

ActiveLibrary[PDF &amp; Document Generation](/categories/documents)

scannerjs/scanner.js
====================

ScannerJS: JavaScript web scan JPG PDF images from TWAIN WIA scanners in browser (Chrome, Edge, Firefox or IE)

2.10.3(8y ago)5914.3k↓50%17[1 issues](https://github.com/Asprise/scannerjs.javascript-scanner-web-twain-wia-browsers-scanner.js/issues)MITHTML

Since Jan 3Pushed 8y ago6 watchersCompare

[ Source](https://github.com/Asprise/scannerjs.javascript-scanner-web-twain-wia-browsers-scanner.js)[ Packagist](https://packagist.org/packages/scannerjs/scanner.js)[ Docs](http://asprise.com/document-scan-upload-image-browser/direct-to-server-php-asp.net-overview.html)[ RSS](/packages/scannerjs-scannerjs/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

[![ScannerJS: JavaScript Web Twain Scanner Access from Browsers (Chrome, Edge, Firefox, IE)](https://camo.githubusercontent.com/132e09f47a11a37bb5080f0f3f5e3e20117132a068bf370c594f9f2943e718ba/68747470733a2f2f617370726973652e636f6d2f7265732f696d672f7363616e6e65726a732d7469746c652e706e67)](http://asprise.com/document-scan-upload-image-browser/direct-to-server-php-asp.net-overview.html)

[Scanner.js enables HTML JavaScript scanning in web browsers (Chrome, Edge, Firefox, IE)](http://asprise.com/document-scan-upload-image-browser/direct-to-server-php-asp.net-overview.html). Scan documents from TWAIN WIA scanners in browsers and upload to the server side, which can be written in any script (Java, C# VB ASP.NET, PHP, Python, Ruby). JPEG, PDF, TIFF are supported.

```
function scanToWebPageAndUpload() {
  scanner.scan(displayImagesOnPage, {
    "twain_cap_setting" : {
        "ICAP_PIXELTYPE" : "TWPT_RGB", // Color
        "ICAP_SUPPORTEDSIZES" : "TWSS_USLETTER" // Paper size: TWSS_USLETTER, TWSS_A4, ...
    },
    "output_settings" : [
        { "type" : "return-base64", "format" : "jpg"} // return images to web page
        { "type": "upload", "format": "pdf", // upload as PDF
            "upload_target": {
                "url": "https://asprise.com/scan/applet/upload.php?action=dump"
            }
        }
    ]
  });
}
```

Installation
------------

[](#installation)

```
bower install scanner
```

Features
--------

[](#features)

- Cross-Browser Support: Chrome, Edge, Firefox and IE
- Integrate To Pages Within An Hour
- Fast Flatbed And ADF Scanning
- Generates Thumbnails &amp; Upload To Web Servers Directly
- Multiple output formats: JPG, PDF, PDF/A, TIFF, CCITT G4
- Barcode Reading &amp; Blank Page Detection
- Cloud Ready; Easy Deployment

Docs &amp; Community
--------------------

[](#docs--community)

- [Developer's Guide to ScannerJs](http://asprise.com/scan/scannerjs/docs/html/scannerjs-javascript-guide.html)
- [Sample code on Github](https://github.com/Asprise/scannerjs.javascript-scanner-access-in-browsers-chrome-ie.scanner.js)
- For more details, please visit the [Scanner.js homepage](http://asprise.com/document-scan-upload-image-browser/direct-to-server-php-asp.net-overview.html)

Quick Start
-----------

[](#quick-start)

Install Scanner.js:

```
bower install scanner
```

Include scanner.js into your page:

```

```

You may then start to call Scanner.js functions:

```
Scan

// Need to upload scanned images to server or save them on hard disk? Please refer to the dev guide: http://asprise.com/document-scan-upload-image-browser/ie-chrome-firefox-scanner-docs.html
// For more scanning code samples, please visit https://github.com/Asprise/scannerjs.javascript-scanner-access-in-browsers-chrome-ie.scanner.js

var scanRequest = {
    "use_asprise_dialog": true, // Whether to use Asprise Scanning Dialog
    "show_scanner_ui": false, // Whether scanner UI should be shown
    "twain_cap_setting": { // Optional scanning settings
        "ICAP_PIXELTYPE": "TWPT_RGB" // Color
    },
    "output_settings": [{
        "type": "return-base64",
        "format": "jpg"
    }]
};

/** Triggers the scan */
function scan() {
    scanner.scan(displayImagesOnPage, scanRequest);
}

/** Processes the scan result */
function displayImagesOnPage(successful, mesg, response) {
    if (!successful) { // On error
        console.error('Failed: ' + mesg);
        return;
    }
    if (successful && mesg != null && mesg.toLowerCase().indexOf('user cancel') >= 0) { // User cancelled.
        console.info('User cancelled');
        return;
    }
    var scannedImages = scanner.getScannedImages(response, true, false); // returns an array of ScannedImage
    for (var i = 0;
        (scannedImages instanceof Array) && i
