我正在尝试使用TWAINDotNet API来控制Epson扫描仪。我几乎一切正常,但我无法正确设置dpi。
如果我将API设置为300,600甚至1199 dpi,扫描仪将按预期工作。不幸的是,当我尝试将dpi设置为1200或更高时,我得到一个TWAINException,指示“TwainDotNet.TwainNative.ConditionCode.CapabilitySequenceError”。 扫描仪当然能够达到1200pi(甚至高dpi值)。
我正在使用VB.Net 2010中的TWAINDotNet
感谢您的任何评论。
答案 0 :(得分:1)
与爱普生合作,我能够解决问题。在V550扫描仪上,最大分辨率是要扫描区域的功能。对于完整的8.5inx11in页面,最大分辨率为1184dpi。
要设置高于1200dpi的分辨率,您需要将要扫描的区域设置为较小的区域。
要纠正这个问题,在datasource.cs中,您所要做的就是移动
if (settings.Area != null)
{
NegotiateArea(settings);
}
前
if (settings.Resolution != null)
{
NegotiateColour(settings);
NegotiateResolution(settings);
}
答案 1 :(得分:0)
吐温" CapabilitySequenceError"意味着,"能力依赖于其他能力"。在将dpi设置为1200之前,这取决于您的特定扫描仪需要设置的其他内容。
在某些情况下,扫描程序希望按特定顺序设置上限。在我的脑海中,也许您需要将扫描速度更改为“慢速”。 (我只是在猜测。)