扫描仪的使用在银行、保险和政府行业中非常普遍。有些公司甚至一天要扫描数以万计的文档,电子化后并归档保存。

过去常见的做法是,使用扫描仪自带的桌面软件来完成所有的扫描工作,然后再打开自己的工作平台(应用),把保存在桌面上的文档上载到数据库中存储。

这样的做法无疑是低效的,所以有越来越多的企业要求要将扫描仪调用的功能直接集成在他们的业务系统中,提供终端用户的使用效率,进而提高产出率。

熟悉扫描仪底层协议的人都知道,在Windows平台上,扫描仪基本上都是遵循TWAIN协议的。这个协议本身是由TWAIN组织定制并被几乎所有的扫描仪厂商采用和执行,并对扫描仪都提供TWAIN驱动。扫描仪本身自带的扫描软件程序,也是通过调用TWAIN驱动来实现文档的扫描和处理工作。

那么,如何在网页中实现对TWAIN驱动的调用呢?

扫描仪是直接连接并运行在客户端的电脑的,有没有可能直接用JavaScript 来访问并调用TWAIN驱动呢? 要知道,想要访问TWAIN驱动,就必须基于TWAIN协议开放的底层接口来进行访问。JavaScript 脚本本身由于安全性考虑,是不允许直接访问本地资源的,但是如果在JavaScript 和 TWAIN驱动之间架设一个桥梁,那实现用JS来间接调用本地的扫描仪技术上仍是可行的。

下文我们会介绍一款目前全球在这个web扫描仪调用SDK领域,比较厉害的一个产品 - 原厂地Canada. 产品名叫做 Dynamic Web TWAIN SDK. 

心急的朋友,可以直接访问下面的在线demo示例,看一下效果。支持的浏览器有 IE, Chrome, Firefox, Safari, 支持的客户端平台有 Windows, macOS 和 Linux. 据说手机端的web应用也是可以的。

https://demo.dynamsoft.com/dwt/online_demo_scan.aspx