首页 > 解决方案 > 如何确定 TWAIN 扫描仪是 ADF/平板式扫描仪,还是两者兼有

问题描述

使用 Leadtools SDK 20 确定当前选择的扫描仪是 ADF/平板还是两者的最佳方法是什么?
我知道我可以使用L_TwainGetCapability()and L_TwainSetCapability()withCAP_FEEDERENABLED来启用/禁用进纸器(如果有),但是我如何确定它是有进纸器(可能只是平板)还是有平板(可能只有 ADF)或两者都有?

谢谢
山姆

标签: c++twainleadtools-sdk

解决方案


我没有使用 LeadTools,但如果设备没有进纸器,则检查平板是多余的。它要么有喂食器,要么没有喂食器。

请记住,TWAIN 设备可能是数码相机,而不是扫描仪——因此“平板”没有意义。

我检查的当前方法是简单地查看是否CAP_FEEDERENABLED支持如下:

  1. 检查是否支持CAP_FEEDERENABLED。如果不支持,则没有进纸器,您就完成了。
  2. 如果支持CAP_FEEDERENABLED ,则保存CAP_FEEDERENABLED的当前设置。
  3. 查看将CAP_FEEDERENABLED设置为 TRUE 是否成功并保存结果。
  4. 使用步骤 2 中保存的值重置CAP_FEEDERENABLED 。
  5. 步骤 3 中保存的结果是决定因素。

不幸的是,这是我这样做的迂回方式,但它应该工作。这基本上在 TWAIN Specification for CAP_FEEDERENABLED 中有描述(我使用的规范版本是 2.4)。


推荐阅读