6

我的任务是将图像采集集成到 .NET 应用程序中,我一直在寻找用于执行此功能的 API。我遇到了几个“标准”API,有些已经存在了很长时间,有些则没有那么久。我查看了对 ISIS、TWAIN、WIA 和 SANE(据说主要是 *nix)的引用。除了 SANE,它们似乎都是 Win32 库,我想知道当前与图像采集设备(扫描仪)通信的建议是什么?

如果您觉得更好,请随时推荐其他东西。 我正在寻找开源选项。

编辑:我把开源,当我真正的意思是免费的时候。使用 WIA 或 TWAIN 很好,因为它们是免费的,即使它们是专有接口。

4

4 回答 4

4

如果您的应用程序正在使用高端扫描仪,并且您需要编写一个应用程序来最大化您的扫描仪的吞吐量并利用这些扫描仪的所有高级功能,您将需要查看基于 ISIS 的 API。我个人使用 Captiva 的/EMC 的PixTools SDK为大型扫描室构建应用程序取得了巨大成功。该工具包使使用各种图像处理过滤器和软件即时清理扫描图像变得相当容易。我还能够轻松集成条形码和补丁码识别。该工具包价格昂贵——四年前大约 6000 美元。

但我怀疑您的应用程序不需要高端解决方案。在这种情况下,我认为您应该查看 TWAIN。我自己从未尝试过,但我知道 TWAIN 很难使用。不久前,我在 CodeProject 上发现了一篇文章,其中作者介绍了 TWAIN 的 .NET 包装器:

.NET TWAIN 图像扫描仪

我玩了一下,它似乎工作。在这里,我发现了一个线程,Luke Quinane 根据同一篇文章将读者推荐给他的 Google Code 项目。这是链接:

吐温点网

于 2010-03-23T20:10:17.787 回答
3

如果您将选择限制在开源,那么您将自己限制在 SANE 中。我怀疑在设备支持和兼容性方面是否有任何其他开源库接近 SANE。也就是说,必须提到的是,与 TWAIN 和 WIA 等专有 API 相比,SANE 在设备支持方面仍然很差……

如果开源不是必须的——那么选择取决于操作系统。WIA 将是 Windows XP 和更新版本的最佳解决方案,如果您需要支持 Windows 2000 或 9x,TWAIN 可能会更好(我认为 TWAIN 也应该是跨平台的,即使我没有任何证据表明这是正确的现在)。与 WIA 相比,TWAIN API 已经过时了(恕我直言),而且 WIA 对支持批量扫描等内容有更严格的要求(TWAIN 是否支持设备制造商)。

于 2010-03-23T17:58:49.767 回答
1

我建议您在大多数情况下使用 TWAIN 驱动程序,因为它提供了与扫描仪的最大兼容性,并且还可以根据扫描仪型号自由定制扫描。如果您正在构建一个简单的扫描应用程序,那么 WIA 也可能是合适的。对于 ISIS,除非您有特定要求,否则您最好先检查其他选项。SANE 在没有 Windows 系统的情况下提供跨网络扫描和系统的最佳支持。

于 2015-03-26T02:11:04.813 回答
0

如果您可以使用 wiþ Sane 的设备 ſ 支持,请务必使用它,因为它是 ſaner、免费(开放)、灵活的。Oðers 将始终施加任意限制。

于 2015-03-24T20:27:04.477 回答