TWAIN-v2.4-说明文档翻译(1)介绍
介绍 Introduction
一致性需求(Need for Consistency)
对于扫描仪,数字摄像仪,以及其他图像获取设备,用户渴望发现将图像合并到他们的文档以及其他工作的价值。然而,支持展示和操作这些图像数据将会让开发者付出高昂的代价。他们需要为了广泛种类的图像设备构造用户接口以及内建的设备控制程序。当他们的应用程序已经被准备好支持一个已有的设备的时候,他们又面临着令人沮丧的现实,那就是设备将会持续地以提供新功能和特性的方式进行升级更新。应用程序开发者发现他们不得不持续地校正他们的产品来保持当前的最新版本。
图像获取设备的开发者和软件应用程序的开发者逐渐意识到在图像设备和应用程序之间需要有一种统一的通讯标准。该标准将会对产品的开发团队以及他们的用户产生有利的价值。该标准允许设备提供商的产品能够被更多的应用程序所访问控制以及应用程序提供商能够从这些设备中获取数据而不关心这些设备是什么类型,或是由谁提供。TWAIN基于上述一致性以及简化需求而被开发出来。
TWAIN的组成元素(Elements of TWAIN)
TWAIN为了在软件应用和图像获取设备(数据源)之间通讯而定义了一套标准的软件协议以及API(application programming interface,应用程序接口)。
在TWAIN中,有3样关键元素:
- 应用软件(Application software)
一个应用应该被修改以用于使用TWAIN。
- 数据源管理器软件(Source Manager software)
该软件管理应用与数据源之间的交互。该模块的代码由TWAIN开发者工具包来提供并且对于任何基于TWAIN协议的应用和数据源的分发都是免费的。
- 数据源软件(Source software)
该软件控制了图像获取设备。它由设备开发者在遵循TWAIN规范的情况下编写提供。传统的设备驱动在现在的情况下被包含在数据源软件中,并且无须分发给应用。

使用TWAIN规范的好处(Benefits of Using TWAIN)
对于应用开发者
允许你为你的应用用户提供一个简单的方式来合并来自任何兼容的图像设备而不用切换应用程序。
节约时间和金钱。如果你现在正为扫描仪等提供底层的设备驱动。因为遵循TWAIN规范的图像获取设备将会提供数据源软件模块,所以你不再需要编写,支持或是分发这些驱动。
允许在你使用了高层封装的TWAIN应用程序接口后通过简单修改你的应用来访问来自任何遵循TWAIN规范的图像外围设备的图像数据。当然如果你愿意,你也可以提供你自己的用户界面来获取数据。
对于数据源开发者
提高你的产品的可使用性和支持性。更多的应用程序将会因为设备集成TWAIN后的实现便携性以及通用性而成为图像的消费者。
允许你为你的设备提供专有的用户界面。这将使你提供最新的特性给用户而不需要等待应用程序合并这些特性到他们的界面。
通过减少你的开发实现来节约金钱耗费。你只需要创建一个简单的遵循TWAIN规范的数据源,而不是创建和支持各种各样版本的设备控制软件来集成到各种各样的应用中。
对于终端用户
- 为用户获取使用图像到他们的文档中提供一个简单的方式。他们可以只凭借简单的几个步骤便可访问到图像因为他们他们不会进行各种软件的切换。
注意:TWAIN同时支持所有版本的Microsoft Windows以及Mac OS X。在TWAIN 2.x以及更高的版本中,也支持Linux和64位的操作系统。关于TWAIN支持16位操作系统和Apple Macintosh OS等旧版本操作系统的信息将不会在本TWAIN说明中提及。请参考说明1.9版本的TWAIN说明来获取关于更早版本操作系统使用TWAIN的信息。
TWAIN的创始(Creation of TWAIN)
TWAIN是在图像工业说明计划的需求之后由一些软件和硬件公司所组成的小团队所创建。这个工作团队的目标是提供一个开放的,多平台的解决方案来将图像输入设备和应用软件连接起来。最初的工作团队由五家代表公司所组成,它们分别是:Aldus,Caere,Kodak Alaris,Hewlett-Packard,以及Logitech。三家其他的公司,Adobe,Howtek以及Software Architects也参与了较多的构建。
TWAIN的设计始于1991年1月。关于TWAIN开发者工具包的代码检视从1991年4月开始,持续到了1992年1月。最初的工具包由TWAIN联盟来进行代码检视。这个联盟包含了代表200多家公司的大约300位个人开发者,他们也将继续影响以及指导TWAIN的未来走向。
当前版本的TWAIN由Adobe,Kodak Alaris, Inc.,Fujitsu Computer Products of Aerica,Hewlett-Packard Company,JFL Peripheral Solution Inc.,Ricoh Corporation, Xerox Corporation,以及Lizardtech Corporation等公司所组成的TWAIN工作团队成员编写。
在1998年的5月,微软与TWAIN工作组宣布了一项协议,该协议规定将在Microsoft Windows 98和Microsoft Windows NT 5.0中包含TWAIN数据源管理器。
在TWAIN的创建中,以下的结构目标将会始终坚持:
易使用(Ease of Adoption)。允许应用提供者以合理的开发和测试量来构建遵循TWAIN规范的应用。TWAIN的基础特性仅仅需要对应用进行适量的修改就可以被实现。而想要使用更多完整的功能和设备控制,则能够在可控的范围内增加开发量。
可扩展(Extensibility)。构建必须要包含足够的灵活性以拥抱横跨各种宿主平台的窗口环境(Mac OS X,Microsoft Windows,使用KDE或是Gnome的Linux等)以及促进来自数据源设备与目标应用之间的各种类型数据的交换。在当前的版本下,只能够支持图像数据,但是在未来还将建议支持包含文本,传真,矢量图等数据。
可集成(Integration)。TWAIN实现中的关键元素“属于”操作系统。微软与TWAIN工作团队所宣布的协议表明集成到操作系统中正进行中。TWAIN必须要实现向后兼容(可扩展性)以及平滑地迁移到操作系统中。最大限度地减少使用平台特殊性机制的实现将会提高软件寿命以及可可复用性。
简化应用与数据源之间的交互(Easy Application <-> Source Interconnect)。一种简单直观的数据源验证和选择机制将被应用。应用程序将通过一个简单的API来驱动这种机制。这个机制也会在应用程序和数据源之间建立数据和控制链接。它将会支持应用程序和数据源之间的能力、配置的通讯和协商。
封装用户界面(Encapsulated Human Interface)。设备原生的用户界面在任何一个数据源软件中都要求有实现。应用程序能够以可选的方式来重写原生的用户界面来让数据源控制物理设备。
TWAIN-v2.4-说明文档翻译(1)介绍的更多相关文章
- ComponentSpace SAML v2.0 for .NET 使用介绍
下载地址:http://samlsso.codeplex.com/ 以下描叙参考版本为其官网最新版本2.5.0.6.相对2.4版本,2.5有了很大改进,很多接口方法都变了.使用起来更方便,易懂. 广告 ...
- GrapeCity Documents for Excel 文档API组件 V2.2 新特性介绍
GrapeCity Documents for Excel 文档API组件 V2.2 正式发布,本次新版本包含诸多重量级产品功能,如:将带有形状的电子表格导出为 PDF.控制分页和电子表格内容.将Ex ...
- Pywinauto在Windows Twain Driver自动化测试中的应用研究
摘 要: 以Python为基础,结合对Twain Driver测试工具的具体需求,将Pywinauto引入到Twain Driver的自动化测试中.介绍了Pywinauto的基本概念,通过测试用例说 ...
- Atitit.java jna 调用c c++ dll的原理与实践 总结 v2 q27
Atitit.java jna 调用c c++ dll的原理与实践 总结 v2 q27 1. Jna简单介绍1 2. Jna范例halo owrld1 3. Jna概念2 3.1. (1)需 ...
- kong插件官方文档翻译
kong插件官方文档翻译 目录 介绍 文件结构 编写自定义逻辑 存储配置 访问数据存储 自定义实体 缓存自定义实体 扩展Admin API 编写测试 (卸载)安装你的插件 插件开发 - 介绍 什么是插 ...
- 最牛逼android上的图表库MpChart(三) 条形图
最牛逼android上的图表库MpChart三 条形图 BarChart条形图介绍 BarChart条形图实例 BarChart效果 最牛逼android上的图表库MpChart(三) 条形图 最近工 ...
- 【转载】正则表达式学习 & ASCII码表
文章原地址: http://www.jb51.net/tools/zhengze.html <正则表达式30分钟入门教程> 其中有几个地方可以有笔记: \s 匹配任意的空白符 \b 匹配单 ...
- 正则表达式30分钟入门教程<转载>
来园子之前写的一篇正则表达式教程,部分翻译自codeproject的The 30 Minute Regex Tutorial. 由于评论里有过长的URL,所以本页排版比较混乱,推荐你到原处查看,看完了 ...
- 正则表达式(来源http://deerchao.net/tutorials/regex/regex.htm)
目录 跳过目录 本文目标 如何使用本教程 正则表达式到底是什么东西? 入门 测试正则表达式 元字符 字符转义 重复 字符类 分枝条件 反义 分组 后向引用 零宽断言 负向零宽断言 注释 贪婪与懒惰 处 ...
- 更新k8s镜像版本的三种方式
一.知识准备 更新镜像版本是在k8s日常使用中非常常见的一种操作,本文主要介绍更新介绍的三种方法 二.环境准备 组件 版本 OS Ubuntu 18.04.1 LTS docker 18.06.0-c ...
随机推荐
- Float浮动(慕课网学习笔记)
float浮动 属性:值 意义 float:left 左浮动 float:right 右浮动 float:none 不浮动 float:inherit 继承父元素浮动属性,若父元素没有浮动属性则失效 ...
- 微信小程序学习笔记二 列表渲染 + 条件渲染
1. 列表渲染 1.1 wx:for 在组件上使用wx:for控制属性绑定一个数组, 即可使用数组中各项的数据重复渲染该组件 默认数组的当前项的下标变量名默认为 index, 数组当前项的变量名默认为 ...
- linux centos 设置笔记本合盖不待机
1.设置笔记本合盖不待机 打开配置文件 vi /etc/systemd/logind.conf 将 HandleLidSwitch 变量前的注释 # 去掉 修改 HandleLidSwitch 变量参 ...
- 第13篇-通过InterpreterCodelet存储机器指令片段
在TemplateInterpreterGenerator::generate_all()函数中生成了许多字节码指令以及一些虚拟机辅助执行的机器指令片段,例如生成空指针异常抛出入口的实现如下: { C ...
- yield表达式 python语法
可以先看下这篇文章:http://www.cnblogs.com/jiangtu/articles/6662043.html 原篇是转载的:http://www.python-tab.com/html ...
- windows/linux 页面编码区别导致 python 乱码
http://blog.csdn.net/haiross/article/details/36189103 可以先看下这篇文章..写的比较用心和详细并且高深..我只是记流水账的. 直到今天我才注意到 ...
- ubuntu-常用设置备忘
环境 系统平台:Ubuntu 16.04.6 其他版本设置也差不多 vim喜好设置 系统安装vim sudo apt-get install vim 通过修改 /etc/vim/vimrc 文件设置 ...
- Docker入门之container篇
启动 启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态(stopped)的容 器重新启动. 因为 Docker 的容器实在太轻量级了,很多时候用户都是随时删除和新创建容器. ...
- Element UI:DatePicker的终止日期与起始日期关联
Template // 起始日期 <el-date-picker v-model="queryParams.startTime" :picker-options=" ...
- Python - poetry(3)配置项详解
config 命令 poetry 通过 config 命令进行配置 也可以直接在 config.toml 文件中进行配置,该文件将在首次运行该命令时自动创建 文件目录 macOS:~/Library/ ...