未发布 扫描识别工具Dynamic Web TWAIN使用教程:属性/方法/事件介绍 Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。
本文为你介绍Dynamic Web TWAIN中属性/方法/事件的具体操作代码,欢迎收藏。
当正确实施后,Dynamic Web TWAIN将在页面加载后自动初始化。一旦初始化,你就可以像堆任何正常的JS对象一样控制它。您可以参考我们的在线API文档来查看Dynamic Web TWAIN的所有内置属性、方法和事件。
这里有三种使用Dynamic Web TWAIN的方法:
属性
属性用于在运行时从Dynamic Web TWAIN中获取或设置特定的值,例如Resolution、Duplex、IfShowUI等。
1 2 3 | /* Property */
/* Scan pages in 200 DPI */
DWObject.Resolution = 200;
|
方法
方法用于调用Dynamic Web TWAIN对象的内置函数,如AcquireImage、SaveAsJPEG、Rotate等。语法非常简单:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | // Method
///
<summary> /// Rotates the image of a specified index in buffer by a specified angle.
/// </summary>
///
<param name="sImageIndex" type="short" data-filtered="filtered">
specifies the index of image in buffer. The index is 0-based.
///
<param name="fAngle" type="float" data-filtered="filtered">
specifies the angle.
///
<param name="bKeepSize" type="bool" data-filtered="filtered">
specifies whether to keep the original size
///
<returns type="bool" data-filtered="filtered"></returns>
DWObject.Rotate(0, 45, false); // rotate the 1st image in the buffer by 45 degrees
|
事件
当达到某个触发点时触发事件。例如,OnMouseClick鼠标点击事件等。与属性和方法相比,事件是有点难度的。在这里我们再多谈一下。
处理事件
添加一个事件监听器
要添加事件监听器,可以使用内置方法RegisterEvent。请参考下面的示例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <script type="text/javascript" data-filtered="filtered">
Dynamsoft.WebTwainEnv.RegisterEvent('OnWebTwainReady', Dynamsoft_OnReady);
var DWObject;
/* OnWebTwainReady event fires as soon as Dynamic Web TWAIN is initialized and ready to be used. It is the best place to add event listeners */
function Dynamsoft_OnReady() {
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
DWObject.RegisterEvent("OnPostTransfer", Dynamsoft_OnPostTransfer);
}
function Dynamsoft_OnPostTransfer() {
/* This event OnPostTransfer will be triggered after a transfer ends. */
/* your code goes here*/
}
</script>
|
在上面的代码中,我们添加了JavaScript函数Dynamsoft_OnPostTransfer()作为事件OnPostTransfer的事件监听器。另外,你可以写这样的代码:
1 2 3 4 5 6 7 8 9 10 | <script type="text/javascript" data-filtered="filtered">
Dynamsoft.WebTwainEnv.RegisterEvent('OnWebTwainReady', Dynamsoft_OnReady);
var DWObject;
function Dynamsoft_OnReady() {
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
DWObject.RegisterEvent("OnPostTransfer", function() {
/* your code goes here*/
});
}
</script>
|
有参数的事件
一些事件具有参数。以OnMouseClick事件为例:
1 2 | /* sImageIndex is the index of the image you clicked on*/
OnMouseClick(short sImageIndex)
|
当您创建相应的JavaScript函数(AKA,事件侦听器)时,可以包含参数并在运行时进行检索。
1 2 3 | function DynamicWebTwain_OnMouseClick(index) {
CurrentImage.value = index + 1;
}
|
或者
1 2 3 | DWObject.RegisterEvent("OnPostTransfer", function(index) {
CurrentImage.value = index + 1;
});
|
特殊事件 -“OnWebTwainReady”
在所有的内置事件中,有一个特殊事件“OnWebTwainReady”。基本上这个事件在Dynamic Web TWAIN对象被初始化并准备好使用的时候触发。正如您在本文前面看到的那样,推荐使用它的方法是:
1 2 3 4 5 6 7 | <script type="text/javascript" data-filtered="filtered">
Dynamsoft.WebTwainEnv.RegisterEvent('OnWebTwainReady', Dynamsoft_OnReady);
var DWObject;
function Dynamsoft_OnReady() {
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
}
</script>
|
或者
1 2 3 4 5 | <script type="text/javascript" data-filtered="filtered">
Dynamsoft.WebTwainEnv.RegisterEvent('OnWebTwainReady', function() {
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
});
</script>
|
本次教程到此结束,希望能对Dynamic Web TWAIN的用户带来帮助,接下来还会有更多的相关教程,敬请期待!
未发布 Windows网络守门人UserLock教程:让用户、组或组织单位进行同步会话 1、点击菜单中的“受保护的帐户”。如果已存在则可以通过双击相应的行来打开所需的用户帐户。否则,您可以为目标组创建受保护的帐户。
2、在受保护的帐户设置中,显示“常规”部分(第一部分)。
3、在“允许的并发会话数”中,将“工作站会话”调整为“限制”。输入'1'作为值。点击“确定”进行验证。

该组的每个用户将被授权登录到同一个工作站会话。如果该组的用户成员尝试在前一个会话打开时打开第二个会话,则会被拒绝。要登录到另一个工作站,他们将不得不注销他们当前的会话。
选项
有些选项有更大的灵活性:
如果已经达到允许的会话数,则可以注销现有会话
当尝试打开另一个工作站会话时,用户将有一个提示窗口,允许他们强制从上一个会话中注销。要打开此选项,请将相应的下拉列表从“未配置”更改为“已启用”。
只允许一个解锁的交互式会话
用户可以打开多个会话(在此示例中),但是一旦新会话打开,上一个会话将被自动锁定。这确保了会话所有者正在使用另一个工作站时,任何会话都不会被打开并可以自由利用。要打开此选项,请将相应的下拉列表从“未配置”更改为“已启用”。
未发布 终端仿真软件z/Scope Anywhere发布v8.0版本,引入了新的用户界面 Cybele Software,Inc.发布z/Scope Anywhere最新版本v8.0。该产品旨在安全地提供主机系统对全球员工、承包商、客户和其他用户的访问,无需设置客户端。
v8.0引入了新的用户界面(UI)。提供了多种方式在多个活动会话之间查看和导航,v8.0保留了旧版本的经典模式,并引入了Cover Flow显示模式(允许用户在视觉上翻转连接)、Gallery模式(连接显示为缩略图)、网格模式(对齐并显示连接会话)。此外,浏览器选项卡也可用于管理主机系统之间的不同连接。
重要的是,最新版本支持打印机终端仿真(TN3287和TN3812)。z/Scope Anywhere现在可以轻松访问打印文件、打印队列、打印预览功能和其他打印功能。此外,打印作业可以发送到浏览器端打印机或下载为文件。 v8.0中提供了许多身份验证选项,包括简化的单点登录(SSO)、登录、OAuth/2(Google,Facebook等)和RADIUS。匿名访问连接现在可以生成一次性URL(OTURL),以避免URL持有者的登录过程中仍需要标准用户的身份验证。这些URL在使用后或在指定时间后到期,是提供临时访问的好方法。如果这些选项不够,还可以使用提供的安全API创建自定义的身份验证过程。
如果需要从外部应用程序集成访问z/Scope Anywhere,则提供了一个新的HLLAPI JavaScript界面以便于集成。用于集成的另一个显着特征是通过用于连接的专用虚拟路径直接访问仿真屏幕的新选项,允许绕过标准着陆页。
要求
需要运行Windows操作系统的服务器机器。为了缩放和负载平衡部署,需要运行Windows操作系统的网关服务器。
兼容的主机系统包括IBM大型机、AS/400和基于Unix的系统。
客户端机器需要符合HTML5标准的Web浏览器,如Microsoft Edge、IE10/11、Safari、Opera、Chrome或Firefox。
未发布 信息化JavaScript甘特图AnyGantt v8.0.0发布,新增时间轴标签设置方法 AnyGantt是完全跨浏览器和跨平台的,可用于ASP.NET、ASP、PHP、JSP、ColdFusion、Ruby on Rails或简单的HTML页面。有了AnyGantt你可以从任何地方可视化数据:从文本、Excel、CSV格式中的文件到MySQL、MS SQL以及Oracle数据库服务器。(重要推荐:AnyGantt已加入在线订购,超值特价低至¥368起!)
AnyGantt v8.0.0更新:
模块化系统
模块化系统是AnyChart 8的核心。它允许您仅连接实际使用的图表类型和功能,大大减少了在网页上运行的大小。基于模块化的AnyChart与流行的捆绑工具(如Webpack,Browserify等)完全兼容。使用我们的JS Builder轻松生成自定义构建。
自定义JavaScript Builds
自定义JavaScript Builder专门用于组装一个仅包含需要使用的功能和图表类型的JavaScript文件。AnyChart 8.0.0版包含30个模块和 16个主题。您还可以创建含许可证密钥的文件 。
Node.js服务器端渲染
Node.js服务器是一个轻量级的Web服务器,提供用于生成矢量图形(PDF,SVG或PS)、位图图像(PNG,JPG或TIFF)、PDF报告和CSV和XLSX(Excel)中的数据的API。它使用JavaScript代码以及JSON和XML配置作为输入数据。服务器非常易于安装和自定义,您可以在任何主要平台上运行:Linux,Windows和macOS。它是创建通过电子邮件或社交网络共享工具发送图表的报表系统的理想选择。
无数据标签功能
无数据标签功能是用于通知图表查看器数据不可用的API。由于默认情况下缺少数据,或者通过“数据更新API”,“排除数据点”功能或通过交互性删除数据,则可能会丢失数据。
重做CSV/Excel导出
根据需求,我们重新编制了为图表准备的CSV/Excel数据的算法。现在,它考虑到图表类型的特定功能,并允许您为不同的系列使用多个数据集。
图表导出设置
现在,您可以自定义每个图表的导出设置:在Facebook上共享的链接和说明、图像导出选项等。
上下文菜单自定义API
我们大大简化了上下文菜单定制的过程。现在,上下文菜单中的每个项目都被分配了一个DI,可以访问相应的字段和设置以及添加自定义ID。我们还添加了本地化上下文菜单的选项。
一般的API改进
我们大大改进了第八代JavaScript图表库中的AnyChart JS Charts API。 界面设置、网格设置、数据映射设置现在变得很容易。为了方便和简化从
AnyChart 7到AnyChart 8的转换,我们创建了允许大多数用户以半自动模式切换到新版本的迁移工具。
时间轴标签设置
甘特时间线文本格式属性现在非常灵活。我们添加了以下方法:baseLabels(), baselineLabels(), parentLabels(), milestoneLabels(), progressLabels()。我们还重新编写了方法labels(),可以用它来设置任何类型的标签默认值。
【慧都十四周年庆预热开启!全场满额送七级豪礼,AppleMac笔记本电脑、iwatch、iPad等您来拿!】
活动时间:10月1日-10月31日

未发布 【更新】视频处理软件BB FlashBack更新至v5.27,提高摄像头FPS BB FlashBack是一种屏幕记录机,能快速容易地创建视频。使用BB FlashBack屏幕录像器创建引人注目的演示和教程。易于使用,不需要技术技巧要求。
强大的功能,使您可以创建“专业”品质的电影。灵活简单,通过YouTube和通用视频格式发布。
目前BB FlashBack在线订购享75折优惠活动正在进行中,欢迎您下载、购买进行运用!
BB FlashBack v5.27更新内容
- 修复以很长的文件夹路径名打开FBR文件会产生错误的问题
修复关闭时崩溃的问题
修复FBConnect上传代理启动崩溃的问题
修复没有记录上次会话之间打开文件夹的问题
修复记录器试图保存到Temp文件夹的问题
修复名称相同的声源无法录制的问题
在录音后对话框中添加了“导出”选项
最大摄像头FPS增加到30
未发布 Essential Studio for JavaScript发布2017 v2,扩展企业Web开发界限
Essential Studio for JavaScript发布2017 v2版本,扩展了企业Web开发的界限。
所有JavaScript控件通用
Aurelia
添加框架导航,以便轻松浏览Aurelia Syncfusion Bridge,其中包含TypeScript,ASP.NET Core和ECMAScript Next(esnext)的框架。
支持Angular
Essential Studio for Angular现在支持提前(AOT)编译。
Ionic 2
Essential Studio for JavaScript现在支持Ionic 2,允许创建高性能的企业移动应用程序。并支持以下功能:
图表
饼状图系列
增加创建饼状图的新功能。

打印
支持打印图表。

改进轴元件配置
图表控件现在可以防止轴图元素(如标签和标题)放在图表区域内时,图表值越过轴的问题。

圆形表盘
图例
添加图例来表示圆形表盘中的范围。

图表
标签的模板选项
图表控件现在支持在HTML和SVG渲染模式中定义标签的模板内容。

PDF查看器
文本标记注释
文本标记注释(高亮、下划线和删除线)已添加到PDF查看器控件中。现在可以加载PDF文档,包括文本标记注释,并且可以编辑现有注释。

时间表
隐藏周末
周末可以隐藏在调度程序中,并在所有视图中只显示工作日。

拼写检查器
打字时检查拼写
当按下Enter键或空格键时,拼写检查器控件主动检查拼写错误。它还可以在选定的文本中检查错误。
使用“类”来检查多个目标
可以根据CSS类或ID来检查多个HTML元素(如div、span、textarea和input)。
检查内联框架中的拼写
拼写检查器控件允许检查内联框架(iframe)中的内容是否有拼写错误。
甘特图
导出PDF
甘特图内容现在可以导出为PDF。

自定义工具栏项目
甘特图控件现在支持自定义工具栏项目。

列表框
排序
现在可以按升序或降序自动排序列表项。

列表显示
虚拟滚动
添加正常模式和连续模式下的虚拟滚动支持,无需缓冲即可加载大量数据。

数据透视图表
分组标签
数据透视图表中的分组标签可以选择向上和向下拉取以提供详细的系列信息。

Pivot客户端
计算成员
Pivot客户端支持通过交互式对话框在运行时创建和显示维度和测度。

所有Pivot控件通用
Mondrian XML/A连接(客户端模式)
所有数据透视控件都可以通过不同版本的XML/A连接从Mondrian中检索多维数据,仅适用于客户端模式。
富文本编辑器
粘贴清理
从Word或网页(HTML)复制的内容将在粘贴到富文本编辑器时进行预处理,清理和格式化以获取正确的HTML。
树型网格
自适应渲染
树型网格控件的UI已经在移动环境中得到了改进。


对话框编辑
树型网格控件现在支持对话框编辑。


自定义工具栏
树型网格控件现在支持自定义工具栏。

列验证
记录在更新到数据库之前可以进行验证。

映射展开状态
初始加载时可以映射树形网格中记录的展开/折叠状态。
复选框列
树型网格支持通过Boolean数据显示复选框列。

未发布 多平台移动项目开发工具Elements发布v9.1,支持Visual Studio 2017 Elements是一款多平台移动项目开发工具软件,它包含Oxygene、C#、Swift三种编程语言和相关工具,并且提供这三种语言丰富的开发经验以及最新的Fire开发环境,极大的方便开发人员开发软件项目。
Fire
此版本是Fire最重要的更新。
性能改进
Fire在许多方面都进行了精简和性能改进。代码编辑器的响应速度更快,例如,在构建过程中CPU占用低。100%的响应一直是Fire的首要目标。Fire的大部分工作都是在极低功耗的12“MacBook”Adorable“上完成的,而我们的基准是,即使是最低端的硬件,Fire也可以使用,9.1版本更是如此。
互动调试控制台
Fire的调试功能在许多方面得到了加强,最出色是引入了新的交互式调试控制台。当你的应用程序进入调试器时,底部控制台视图现在允许你使用调试器命令提示符与调试器进行交互。
在使用LLDB的平台(如Cocoa和一些Island targets)上,你可以使用所有功能访问LLDB的完整命令界面;在其他平台上你会收到我们的edb提示,它提供必要的命令并将随着时间的推移而扩展。
Gradle References和EBuild
Fire(和Elements构建链)支持Java和Android项目中的显式Gradle References管理。Gradle References现在是项目的第一类成员,就像常规引用一样,它们可以通过“管理引用”表进行添加和更新。Fire还使用我们即将推出的EBuild工具链的技术预览。
Visual Studio中的Elements
Visual Studio是Windows上开发人员的主要IDE,Elements 9.1为Visual Studio带来了一些新功能和增强功能。
支持Visual Studio 2017
支持所有新的Visual Studio 2017 IDE。虽然没有Shell,Elements 9.1提供了与已安装的Visual Studio 2017集成,包括专业版、企业版和免费社区版。当然,VS2017中支持所有四种平台和三种语言。
Island
我们最初在9版中引入的新版本的Island平台也是这个版本的主要重点,有许多改进和增强和修复:
在Windows 10上运行和调试Linux应用程序
针对Linux的Island开发人员现在可以在Visual Studio、Windows 10 Creators Update或更高版本的本地机器上无缝地运行和调试他们的应用程序,只需点击“ 开始 ”或按F5。
新的子平台:ARM上的Android NDK和Linux
Elements 9.1中Island平台支持两个新的子平台。除了支持英特尔x64之外,Linux应用程序现在可以定位armv6和更高版本的CPU。你可以开发在嵌入式设备上运行的Island应用程序,从Raspberry Pi一直运行到Bare ARM系统等。
此外,我们还添加了Android NDK作为一个brad新的子平台,允许你使用NDK、Oxygene、C#、Swift和Java语言创建Android应用程序扩展(或整个应用程序)。
支持Library
EUnit、Elements RTL和Delphi RTL都已经移植到了这个版本的Island,现在在使用这些(可选)库时,可以在所有三个平台上同步。
Libraries
Elements RTL
Elements 9.1正式引入了新的跨平台兼容性库Elements RTL。代替“Sugar”,Elements RTL是一个可选的库。无论你是在编写一个iOS应用程序并计划移植到Android,还是要创建Mac和Windows版本的桌面应用程序,Elements RTL可以轻松共享代码。
当然,Elements RTL也支持我们新的Island平台。
Delphi RTL改进
用于将Delphi代码移植到Oxygene的Delphi RTL兼容性库得到了改进。它现在基于Elements RTL,并且也适用于Island,使其成为跨所有Elements targets的真正跨平台。
未发布 集成的HTTP嗅探器HttpWatch v11发布,支持Google Chrome丨附下载 HttpWatch v11新功能
HttpWatch支持Google Chrome
现在可以在Chrome中打开一个HttpWatch窗口,通过点击HttpWatch图标来记录网络流量:
或使用任何网页中的上下文菜单:
HAR文件现在包含(缓存)和错误
HAR文件规格不允许记录缓存或失败的请求。HttpWatch现在使用与其他工具相同的扩展属性来规避此限制:
