1

我尝试使用scanner.js,但是 当我尝试使用Asprise 的scanner.js 时,同样的错误一直显示我的websocket 连接有问题。 我使用 npm iscanner.js 安装了scanner.js,并将其导入到我的反应代码中。我什至在我的 html 页面中添加了以下脚本脚本,但它不起作用。

从“反应”导入反应;从'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;
4

0 回答 0