2

i try to use scanner.js but the same error keeps on showing i have a problem with websocket connection when i try using scanner.js from Asprise. i installed scanner.js using npm i scanner.js and imported it in my react code. i even added the following script script in my html page and it does notwork.

import React from "react"; import scanner from 'scanner-js';

let scanRequest = {
  "use_asprise_dialog": true, // Whether to use Asprise Scanning Dialog
  "show_scanner_ui": true, // Whether scanner UI should be shown
  "twain_cap_setting" : {
    "ICAP_PIXELTYPE" : "TWPT_RGB", // Color
    "ICAP_XRESOLUTION" : "100", // DPI: 100
    "ICAP_YRESOLUTION" : "100",
    "ICAP_SUPPORTEDSIZES" : "TWSS_USLETTER" // Paper size: TWSS_USLETTER, TWSS_A4, ...
  },
  "output_settings": [{
      "type": "return-base64",
      "format": "pdf",
      "thumbnail_height": 200,
  }]
};

/** Triggers the scan */
const scan = () => {
  scanner.scan(displayImagesOnPage, scanRequest);
}

/** Processes the scan result */
const 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;
  }
  let scannedImages = scanner.getScannedImages(response, true, false); // returns an array of ScannedImage
  for (let i = 0;
      (scannedImages instanceof Array) && i < scannedImages.length; i++) {
      let scannedImage = scannedImages[i];
      let elementImg = scanner.createDomElementFromModel({
          'name': 'img',
          'attributes': {
              'class': 'scanned',
              'src': scannedImage.src
          }
      });
      (document.getElementById('images') ? document.getElementById('images') : document.body).appendChild(elementImg);
  }
}
export const Scanner = () => {
  return (
    <div>
      <h2>Scanner.js TEST</h2>

      <button type="button" onClick={()=>scan()}>
        Scan 
      </button>
      <div id="images"></div>
    </div>
  );
};

export default Scanner;
tayssira
  • 21
  • 1

0 Answers0