Skip to content

Latest commit

 

History

History
63 lines (53 loc) · 2.04 KB

File metadata and controls

63 lines (53 loc) · 2.04 KB
layout default-layout
noTitleIndex true
needAutoGenerateSidebar true
title How can I use a custom capability of my scanner hardware when there is no direct API to set it?
keywords Dynamic Web TWAIN, Capture/ Image Source, custom capability
breadcrumbText How can I use a custom capability of my scanner hardware when there is no direct API to set it?
description How can I use a custom capability of my scanner hardware when there is no direct API to set it?
date 2021-12-08 03:01:32 +0000
last_modified 2024-09-19 08:47:35 +0000

Capture/Image Source

How can I use a custom capability of my scanner hardware when there is no direct API to set it?

You can use Capability Negotiation to set it. Capability Negotiation is the way a TWAIN application communicates with a TWAIN source. This is how Dynamic Web TWAIN communicates with a scanner. The process looks something like this:

  • [Dynamic Web TWAIN] Are you capable of ***?
  • [Scanner] Yes, and here is what I can do…
  • [Dynamic Web TWAIN] Great, here is what I want done…
  • [Scanner] Consider it done

The steps are:

  1. Use getCapabilities{:target="_blank"} to find the capability you want to set.
DWTObject.OpenSource();
DWTObject.getCapabilities(
  function () {
    console.log(arguments);
  },
  function (error) {
    console.log(error);
  }
);
  • Alternatively, you can install the TWAIN Sample App to check the capabilities available and their values.
  1. Use setCapabilities{:target="_blank"} to set the capability.
DWTObject.setCapabilities(
  {
    exception: "ignore",
    capabilities: [
      {
        capability: Dynamsoft.DWT.EnumDWT_Cap.ICAP_CONTRAST,
        curValue: 500, // set the contrast to 500
        exception: "fail",
      },
    ],
  },
  function (result) {
    console.log(result);
  },
  function (error) {
    console.log(error);
  }
);