- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
现在使用扫描仪数码照相机以及其他图像获得设备的应用越来越多
现在使用扫描仪、数码照相机、以及其他图像获得设备的应用越来越多了,用户越来越希望把这些获得的图像加入到自己的文件或其他工作中。然而,要显示并操作这些图像的光栅数据需要应用程序开发人员进行较大的工作。
?? 一种比较简单的实现是通过是KODAK提供的控件,但是这种方法局限性太多,很多设备的功能都不能使用,比如设置设备扫描的分辨率,设置数据传输方式等等...(以扫描仪器为例子)。我将介绍利用TWAIN来实现对光栅图像输入设备(扫描仪、数码相机...)的控制,
谈谈TWAIN
? TWAIN是什么?TWAIN Working Group 是一个致力于光栅图像输入设备通讯的非盈利的组织。Twain就是它们提供的开发包,并且大多数的设备厂家都遵循该接口。Microsoft也把该开发接口作为系统文件发布在了windows中(9x/nt/2000/xp)。
TWAIN 结构
它们由的三个软件组件构成( application, Source Manager, 和 Source.)
?你的程序可以通过这些组件实现与设备的通讯。
TWAIN结构由下面四个层次组成:
????????? Application
????????? Protocol
????????? Acquisition
????????? Device
Application
这一层是用户可执行应用程序软件所在的地方。
TWAIN 提供了一个用户接口规则,可以让应用程序开发人员访问TWAIN函数以及让用户选择一个指定的数据Source.TWAIN不参与应用程序的实现工作。TWAIN不对该层由可能用到的应用程序间的通讯产生影响。
?
Protocol
这个协议就是使用TWAIN对话的语法。它通过准确的指令实现数据传输的通讯工作。
这个协议层包括:?
????????? ?TWAIN 和用户应用程序接口
????????? ? TWAIN提供的Source Manager
????????? ? Source device 与 SourceManager 间的数据传输以及返回代码
?该层更详细的说明将在后面的介绍。
Acquisition
?????????????? Acquisition设备可能是物理设备(扫描仪、数码相机)或者逻辑设备(图像数据库)。Source为应用
程序传输数据。它使用这个格式在Source和Application间实现传输机制。
Source通常提供一个内建的用户接口去控制Source代表的设备。
Device
????????? 这层就不介绍了。
注意: 在appcation 和 Sources 间的通讯中,Protocol 层是最重要的。
TWAIN组件间通讯
TWAIN组件间通讯有两个函数指针入口,分别是DSM_Entry( ) 和 DS_Entry( ). DSM 表示 Data Source Manager , DS 表示 Data Source.
?
The Application
Application的目的是为了从Source获得图像数据,然而,applications不能直接和Source对话。对Source所有操作(获得数据、性能信息、错误信息等…)必须通过Source Manager传递来实现。
在TWAIN中定义了大约140个操作消息。Application把这些消息发给Source Manager,以实现对选定的Source进行操作。
Application于Source Manager 通讯通过DSM_Entry( )函数实现。
?
?
DSM_Entry 函数参数列表内容:
?
??????????? ?An identifier structure providing information about the application that originated the
function call
??????????? ?作用 (Source Manager 或 Source)
??????????? ? triplet操作描述。triplet 操作说明:
??????? Data Group for the Operation (DG_ )
??????? Data Argument Type for the Operation (DAT_ )
??????? Message for the Operation (MSG_ )
??????????? 指向传输数据的指针
?
这个函数会返回一个值来表示操作是否成功。
?
在C中,函数调用如下:
?
On Windows
?
TW_UINT16 FAR PASCAL DSM_
您可能关注的文档
最近下载
- 发改价格[2007]670号监理收费标准.pdf VIP
- 发改价格【2007】670号《建设工程监理与相关服务收费管理....docx VIP
- 最新实用医学汉语-医学课件.ppt VIP
- 医学汉语教学大纲.doc VIP
- 水工建筑物外观质量评定标准.docx VIP
- 英语国际音标表(8个)打印版.doc VIP
- 升立德 E系列控制卡快速入门.pdf VIP
- 欧盟发布电池和废电池的新规(EU) 附中译文参照_182518812544822.pdf VIP
- 9.3抗日战争80周年阅兵九三阅兵小小爱国者探索手册PPT(优质ppt).pptx VIP
- 部编版六年级语文上册《 开国大典》PPT课件(含教案).pptx VIP
文档评论(0)