双工模式下的python twain库从每一面获取单独的图像
我尝试在双工模式下使用python twain库进行扫描,并从两侧各获得一个图像双工模式下的python twain库从每一面获取单独的图像,python,twain,Python,Twain,我尝试在双工模式下使用python twain库进行扫描,并从两侧各获得一个图像 import twain sm = twain.SourceManager(0) ss = sm.OpenSource('Plustek MobileOffice D600') ss.SetCapability( twain.CAP_DUPLEXENABLED, twain.TWTY_BOOL, True ) ss.RequestAcquire(0,0) rv = ss.XferImageNatively() i
import twain
sm = twain.SourceManager(0)
ss = sm.OpenSource('Plustek MobileOffice D600')
ss.SetCapability( twain.CAP_DUPLEXENABLED, twain.TWTY_BOOL, True )
ss.RequestAcquire(0,0)
rv = ss.XferImageNatively()
if rv:
(handle, count) = rv
twain.DIBToBMFile(handle, 'image.bmp')
该代码只获得一个图像,但使用提供的库文档,我不知道如何从中独立获取图像。我知道这是可能的,因为我可以从封闭源代码库CLScan()中获取演示
欢迎提出任何建议。我在GitHub上找到了示例代码。可以使用循环保存所有可用图像:
import twain
index = 0;
def next(ss):
try:
print ss.GetImageInfo()
return True
except:
return False
def capture(ss):
global index
rv = ss.XferImageNatively()
fileName = str(index) + '_image.bmp';
index+=1;
print rv;
if rv:
(handle, count) = rv
twain.DIBToBMFile(handle, fileName)
sm = twain.SourceManager(0)
ss = sm.OpenSource('Plustek MobileOffice D600')
try:
ss.SetCapability( twain.CAP_DUPLEXENABLED, twain.TWTY_BOOL, True)
except:
print "Could not set duplex to True"
print "acquire image"
ss.RequestAcquire(0,0)
while next(ss):
capture(ss)
print('Done')
是否有可能一个图像被另一个图像覆盖?我认为它没有被覆盖。变量“count”不会增加到2,而是保持在1中。库的问题文档非常糟糕。是的,这是开源产品的一种折衷。我建议你检查以下几点:1。验证是否已成功设置双工模式2。您可能需要设置cap_xfercount。检查一下它是否有用。@Rachel:当我使用应答码时,双工模式无法设置为真。请告知。我们必须使这个答案可靠。我几乎没有TWAIN设备。所有其他答案都让人困惑。无法打印正面和背面。甚至都不想保存更多的页面。请您更新如何双面扫描后部和前部,好吗?我尝试了
ss.set\u功能(twain.CAP\u DUPLEXENABLED,twain.TWTY\u BOOL,True)
,但仍然无法实现双面扫描。