问题标签 [twain]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
918 浏览

c# - 带施乐工作中心的 twain 驱动程序

这是我第一次在这里发帖,我需要创建一个 twain 驱动程序来控制 mpf Workcentre Xerox 3635 中的扫描仪。我需要关于为什么施乐 twain 驱动程序不能正常工作并且非常受限的帮助。语言是或 c/c++ 或 c#。非常感谢您的回复。

0 投票
4 回答
10906 浏览

c# - C# 应用程序的 WIA/TWAIN 包装器类?

在 C# 应用程序中是否有用于 WIA/TWAIN 功能的包装类?

我所做的每一次搜索都指向同一个 2001 年的 CodeProject 页面,那里肯定有的东西,对吧?

也许我没有找对地方。:P

我需要一些非常简单的东西,比如:

做完了。

有什么指导吗?

0 投票
4 回答
1963 浏览

c# - 这段代码是如何工作的?[难的]

链接: http: //www.codeproject.com/KB/dotnet/twaindotnet.aspx

我正在尝试为 TWAIN 的这个开源 .NET 实现创建一个包装类,但我无法理解它实际上是如何获取图像的。

我已经下载了源代码,在 GUI 中有一个名为 Acquire 的按钮。当我单击此按钮转到它的事件处理程序时,我找到了我假设获取图像的这段代码:

如果我按照 Acquire() 方法查看它的内容,我会看到:

我不明白的是,具有“void”返回类型的方法实际上如何具有 return 语句。另外,它在哪里获取和返回图像?

任何人都可以帮忙吗?

我正在尝试创建一个有用的包装器并将其开源,因为就目前而言,在 C# 中扫描图像没有简单的拖放解决方案。

谢谢您的帮助!

编辑:感谢有关提前退货的帮助。直到!现在我很好奇应用程序如何让图像显示在表单上。

有什么指导吗?

0 投票
3 回答
5145 浏览

c++ - 最快的纠偏算法?

我手头的任务让我有点不知所措。我们有一个用于 TWAIN 扫描的工具包。我们的一些客户抱怨设置纠偏选项后扫描速度变慢。这是因为如果他们的扫描仪不支持硬件纠偏,则会在 CPU 的后处理中完成。我想知道是否有人知道一个好的(即快速)算法来实现这一点。我很难说我们现在使用的是什么算法。有什么算法可以解决这个问题,它们在速度/准确性方面的排名如何?如果我知道算法的名称,我可以更轻松地对它们进行谷歌搜索。

谢谢你。-汤姆

0 投票
1 回答
908 浏览

c# - 使用 TWAIN 扫描的图像的计算精度

我正在使用 TWAIN 库来扫描灰度图像。然后,我以编程方式调整扫描图像中的每个像素,使其具有不同的白色和黑色端点。因此,颜色值小于黑点的像素被钳制到黑点。并且颜色值大于白点的像素被钳制到白点。此外,外推介于两者之间的所有像素。

我的问题是我在计算中失去了质量,因为我正在计算的扫描图像每个颜色通道只有 8 位。

我要么需要某种方式来获取每个颜色通道具有更高位数的图像,要么我需要告诉扫描仪为我做这个计算。

我知道爱普生控制面板允许您指定黑白端点并进行此计算,看起来它没有准确性问题。所以我想知道它是否正在做一些特定于爱普生硬件的事情。不幸的是,我的软件需要使用通用打印机。

有谁知道解决这个问题的方法?

0 投票
1 回答
2102 浏览

.net - 如何从文档进纸器异步扫描和传输图像

与 TWAIN 通信的哪些部分可以放入另一个线程,例如 BackgroundWorker?或者:是否可以拆分处理图像传输的循环?

一些扫描仪驱动程序在返回调用应用程序之前扫描所有图像,这会强制应用程序一次处理所有图像。当突然必须立即处理所有事件(在每个扫描图像后引发)时,这会导致例如 OutOfMemoryException 或我的 WPF 应用程序中的奇怪行为。此外,应用程序挂起,直到传输完成。

我正在使用 TwainDotNet: http ://code.google.com/p/twaindotnet/但我也在寻找一个通用的解决方案来描述消息过滤器以及与 TwainDotNet 无关的 TWAIN 的交互。包含 TWAIN 消息的工作流就足够了。也欢迎其他语言,最好是 C 或 Deplhi 之类的语言。

DataSourceManager 中消息过滤器的当前实现可以描述如下:

  • 从窗口句柄 (hwnd) 获取消息信息
  • 复杂的过滤器,将东西发送到 TWAIN 等。
  • 如果消息关闭(例如,当按下 TWAIN UI 中的取消按钮时)
    • 关闭数据源
    • 禁用过滤器
    • 呼叫扫描完成事件
  • 如果消息传输准备好:
    • 在一个循环中(直到 ADF 为空等,这会阻止消息过滤器)
      • 获取图像
      • 将图像指针转换为 GDI+ 图像
      • 以图像为参数调用 TransferImage 事件
    • 重置转移
    • 关闭数据源等(同消息关闭)
  • 通知窗口,消息已被处理

我已经用几个扫描仪对此进行了测试:

  • 每次传输页面时,富士通 fi-5120C 都会调用 TransferImage 事件。该图像会立即在我的 WPF 应用程序的图像列表中弹出。
  • 佳能 DR-5010C 会阻止我的 WPF 应用程序,直到扫描完所有图像(直到循环结束)。Windows 甚至说,WPF 应用程序没有响应。传输完所有图像后,仅显示少数图像,图像列表中的选择闪烁等。

我不关心显示问题,而是关心窗口阻塞和内存问题。将传输图像的循环放入 BackgroundWorker 导致了几次崩溃,我无法调试。当然,我考虑了 WPF 的线程问题。我也不知道如何拆分传输循环,以便在传输一张图像后,程序返回消息过滤器并且可以将消息标记为已处理。

0 投票
1 回答
243 浏览

c - 如何在 TWAIN 中最大化扫描区域?

我的用户倾向于将纸张随机插入扫描仪进纸器,而 A4 的默认设置有时不会剪切它 - 部分图像被剪切掉了。如何让 TWAIN 扫描尽可能大的图像?

我正在使用 EZTWAIN 经典版。我找不到合适的功能,购买 EZTWAIN Pro 是不可能的,所以可能唯一的方法是直接与 TWAIN 交谈。

请帮忙。

0 投票
1 回答
1436 浏览

delphi - Delphi twain的特定区域扫描

如何使用Delphi twain 库确定扫描的 x,y 开始和 x,y 结束?

另外我如何设置 dpi 来扫描文档。

谢谢。

0 投票
1 回答
1336 浏览

delphi - DelphiTwain如何显示表单设置

我正在使用 Delphitwain (delphitwain.sourceforge.net) 向我的应用程序添加扫描功能。一切都很好,当我单击我的应用程序上的扫描按钮时,它将显示扫描模式以及扫描仪的属性,例如页面大小、扫描面(佳能 dr-3010c),并且有一个扫描按钮和取消按钮。如果我单击取消当然所有属性都恢复到之前的值。

我如何仅显示此扫描仪的属性以在不扫描的情况下更改属性,因为我可以在不显示属性的情况下进行扫描

Twain.Source[CurrentSource].EnableSource(True, True);

ShowUI 的第一个 True 和 Modal 的第二个 True

我知道它可以实现'因为我已经看到另一个应用程序可以显示扫描仪的属性而无需扫描,只有确定和取消按钮,我已经搜索了谷歌但没有运气,或者它只是 delphitwain 组件的限制?谢谢,任何建议表示赞赏

0 投票
1 回答
3056 浏览

vb.net - 申请扫描图片

如何在VB.NET项目中实现Twain OCX扫描或加载图片?