图像处理工具包ImagXpress的开发厂商Accusoft Pegasus旗下有多种图像处理相关的控件,但是这些图像处理控件之间的如何加传递图像数据呢?在ImagXpress 11版本之前,是需要将图像的数据用DIB格式表示,不过后来逐渐的就开始寻找一种更加简单的方法来实现组件间的图像数据的传递,最终达到想一个方法调用般简单。

在Accusoft Pegasus下的任何产品或是组合,只要支持可以用简单的方法发送图像的数据到另一个Accusoft对象的Accusoft图像,就将会有两种方法实现数据传递:CopyTo(对象目的地)以及TransferTo(对象目的地),同时任何支持可以简单接收图像数据的Accusoft图像类将会在它的其他文档中出现。

一个CopyTo方法构成了一个完整的图像数据副本,当被调用的时候,源和目标对象将会包含它们相同图像数据的自己单独的副本。一个TransferTo 方法,在另一方面,将完全从一个对象到另一个对象传输图像数据,当完成的时候,这个源对象将不再包含图像数据,这个图像也将会被目标对象所有。

ImagXpress组件中的数据传递

在ImagXpress组件套包中,有四类支持通过CopyTo和TransferTo方法发送它们的图像数据:

ImagXpress - Accusoft.ImagXpressSdk.ImageX

TwainPRO - Accusoft.TwainProSdk.ScannedImage

ISIS Xpress - Accusoft.ISISXpressSdk.Output

ThumbnailXpress - Accusoft.ThumbnailXpressSdk.ThumbnailItem

在ImagXpress组件套包中,只有ImagXpress ImageX类支持接收图像数据,其他的Accusoft产品可能包含额外的类用于可以发送和接收图像数据。

如何从一个ImageX对象传输图像数据到另一对象

即使只是ImagXpress组件,你可以实现简单的从一个ImageX对象到另一个对象之间的复制或传递图像的数据。

C# 示例代码,获取

在上面的示例中,创建了一个小的24位红色图像对象,并命名为redImage,同时保存了它的图像数据为“original.bmp”到磁盘上,如果你打开这个文件,就会看见一个红色的图像。

然后创建一个大的,一个字节的白色图像,命名为whiteImage,但是不是保存到磁盘上,问首先传递它的图像数据到redImage对象上,然后再次 保存redImage当前的图像数据,这次保存为“transferred.bmp”。由于在whiteImage对象里面的图像数据完全转移到 redImage对象上,所以如果你打开第二个文件,就会看见一个大的白色图像。

有兴趣的可以去下载试用一下ImagXpress

图像处理工具包ImagXpress教程:Accusoft不同组件间的图像数据传递的更多相关文章

  1. 图像处理工具包ImagXpress中如何定义图像显示属性

    图像处理工具包ImagXpress中如何定义图像显示属性,如色彩管理.设置工具栏和工具.设置上下文&工具栏菜单.配置滚动条.鼠标和键等······ 在显示图像时的色彩管理 在ImagXpres ...

  2. React学习(2)—— 组件的运用和数据传递

    React官方中文文档地址:    https://doc.react-china.org/ 了解了组件之后,就需要理解“Props”和“State”的用法.首先来介绍State,State按照字面意 ...

  3. 图像处理工具包ImagXpress中如何定义查看器的属性

    想要在图像处理控件ImagXpress中查看一个图像,首先需要创建一个查看器,之后你可以按照你自身的需要,来定义查看器的属性. 创建查看器 想要动态的创建一个查看器,需要先定义一个新的mageXVie ...

  4. [Unity3D]场景间切换与数据传递(以及物体删除技巧)

    http://blog.163.com/kingmax_res/blog/static/77282442201031712216508/ 先介绍一些基本函数(具体用法自己查文档):---------- ...

  5. vue父组件异步获取动态数据传递给子组件获取不到值

    原理: 在父组件中使用axios获取异步数据传给子组件,但是发现子组件在渲染的时候并没有数据,在created里面打印也是空的,结果发现一开始子组件绑定的数据是空的,在请求数据没有返回数据时,子组件就 ...

  6. TopJUI | easyui HTML Dialog页面间GET方式数据传递

    较容易的方式通过URL内带参数进行数据传递 var url = "apddList.html?c0=" + row.uuid + "&c1=" + ro ...

  7. 浅谈Vue不同场景下组件间的数据交流

    浅谈Vue不同场景下组件间的数据“交流”   Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...

  8. webpack+vue 组件间传参(单一事件中心管理组件通信--$root),如果有路由的话会失效

    先给一个例子: <body> <div id="box"> <com-a></com-a> <com-b></co ...

  9. 【Vue】浅谈Vue不同场景下组件间的数据交流

    浅谈Vue不同场景下组件间的数据“交流”   Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...

随机推荐

  1. 3. 如何封装查询条件与查询结果到map中

    public Map<String, Object> queryOrderStatus(String orderNo) { // 查询到的结果与查询的条件一一对应,封装到map中! Str ...

  2. saltstack之(十二)配置管理mount

    线上很多服务器都需要挂载存储上的公共目录,并实现开机启动(/etc/fstab),比如web的静态文件共享目录,日志远程集中收集等. 一.批量挂载部分. 1.在node1上配置nfs服务器,有关nfs ...

  3. win2003下全自动快速安装php+mysql套件

    导读:Windows 2003下一键快速安装PHP和MySql的安装包 场景:wind2003 32位 php5.2 1.下载php+mysql套件 地址1 http://pan.baidu.com/ ...

  4. OpenGL学习笔记:拾取与选择

    转自:OpenGL学习笔记:拾取与选择 在开发OpenGL程序时,一个重要的问题就是互动,假设一个场景里面有很多元素,当用鼠标点击不同元素时,期待作出不同的反应,那么在OpenGL里面,是怎么知道我当 ...

  5. linux下利用elk+redis 搭建日志分析平台教程

    linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm   elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...

  6. 使用Proj.Net创建空间参考

    在RGEOS项目中,投影变换是通过Proj.Net来实现的. 支持的投影主要包括AlbersProjection.TransverseMercator.Mercator.Krovak.Lambert ...

  7. MongoDB 正则表达式

    示例 MongoDB 使用 $regex 操作符来设置匹配字符串的正则表达式. > db.col.find() { "_id" : ObjectId("56c6bb ...

  8. Vue.2.0.5-Render 函数

    基础 Vue 推荐使用在绝大多数情况下使用 template 来创建你的 HTML.然而在一些场景中,你真的需要 JavaScript 的完全编程的能力,这就是 render 函数,它比 templa ...

  9. VS中查看/修改Dialog控件TAB顺序的方法

    打开资源视图,打开Dialog的编辑界面 查看: 格式>Tab键顺序 修改: 格式>Tab键顺序 用鼠标左键按你想要的顺序点击各个控件的TAB标签,就设定了 那些你想要TAB键能选择到的控 ...

  10. 帮你深入理解OAuth2.0协议

    1. 引言 如果你开车去酒店赴宴,你经常会苦于找不到停车位而耽误很多时间.是否有好办法可以避免这个问题呢?有的,听说有一些豪车的车主就不担心这个问题.豪车一般配备两种钥匙:主钥匙和泊车钥匙.当你到酒店 ...