未找到

未发布 扫描识别工具Dynamic Web TWAIN使用教程:属性/方法/事件介绍
by Harriet666 keys 分享 1511947096620
Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。
本文为你介绍Dynamic Web 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的用户带来帮助,接下来还会有更多的相关教程,敬请期待!

未发布 12个优秀JavaScript库帮助你创建超酷滚动效果
by AABBbaby keys 分享 1457405133377
在本文中,小编为大家收集了一些用于创建酷炫滚动效应的优秀JavaScript库。动画和特效能够帮助网站变得更有活力和感染力,而这些非常棒的JavaScript库则能帮助您创建这样的网站。
移动网站性能优化:网页加载技术概览
by ourjs keys 技术前沿 1377566848000
性能一直是网站成功的关键。越来越多的研究已经证明,不管是小型电商,还是像沃尔玛那样的连锁店,即使是页面加载时间方面的细微改善,都可以带来更多的业务,更多的广告收入,更多的用户粘性和更多的客户满意度。



在过去几年,Web开发者都是基于改善硬件或者提高带宽速度来优化用户体验。但是最近几年,爆炸式的移动Web浏览器的使用打破了这个途径。低带宽,高延迟,小内存,低处理器性能的移动设备环境,迫使开发者不得不想办法通过优化前端页面的性能来满足用户的性能预期。



在强调如何解决移动端性能问题上,这篇文章总结了一些前端优化的案例,并且概括了一些加速页面的方法和策略。
Windows XP 有救了
by ourjs keys 大话编程 1378962360000
据美国科技博客ZDNet报道,在2014年4月8日微软停止支持旧版操作系统Windows XP之后,数千家企业用户似乎仍会坚守这个平台。因此,它们的IT部门就不得不想法寻求非微软公司对Windows XP的支持了。一向与微软关系亲密的Arkoon公司已明确表示,在微软停止支持Windows XP后,它将会接棒继续支持该操作系统。

Arkoon公司位于法国巴黎,隶属于欧洲宇航防务集团EADS旗下的Cassidian安全公司。它给那些在Windows XP寿终正寝后仍无法或不愿离开它的企业用户继续提供ExtendedXP(下面简称EXP)产品,以支持它们正在使用的Windows XP。
未发布 开发者在增加移动APP收益时必须做的5件事
by Harriet666 keys 分享 1487667101099

点击查看详细内容,增加你的APP收益>>>

如今手机应用市场越来越大,其中创新、独特的产品也越来越多。APP市场最好的地方就是无论是iTunes还是Google Play中,你都有平等的机会参与竞争和获得成功。这是一个公平的竞争环境,吸引着无数优质的开发商。专家们已经预测,APP市场在2020年将翻一番,价值可以达到101亿美元。

无论你是一个多优秀的开发者,在开始新的APP应用时也应该注意一些事情。在启动一个APP项目时你应该记住和经过几个重要的步骤来确保它能成功。


判断Node.JS TCP Socket当前连接状态
by ourjs keys JS学习 Node.JS 1534353061812
Node.JS 官方文档中并没有获取当前 socket 连接状态的说明。不过打印 socket 可以看出,可以通过 socket._handle 属性来判断,当socket end或 destroy后,此属性被设为null。当建立tcp连接后 _handle 为 tcp 对象:

Socket {
  connecting: false,
  _hadError: false,
  _handle:
   TCP {
     bytesRead: 0,
     _externalStream: {},
     fd: -1,
     reading: true,
     owner: [Circular],
     onread: [Function: onread],
     onconnection: null,
     writeQueueSize: 0 },
  _parent: null,
  _host: null,
JuliusJS: 基于JavaScript的在线语音识别库
by ourjs keys JS开源 开源 1412987992774

JuliusJS 是使用JavaScript实现的一个语音识别库
可以识别用户所说的内容,然后立即翻译出来,声音->文字 PS: 通过一个回调函数,示例代码:

// bootstrap JuliusJS
var julius = new Julius();

julius.onrecognition = function(sentence) {
    console.log(sentence);
};

// say "Hello, world!"
// console logs: `> HELLO WORLD`

漫画:为什么不能打断程序员?
by ourjs keys 轻松一刻 1383142756000

昨天从 HN 上看到 Jason Heeris 制作的这张漫画,说的就是为什么不能随便打断程序员思维的原因。正如王建硕在《入静和入世》文章说的: “当看到一个程序员冥思苦想的时候,不要过去打扰,甚至在极端的情况下,一句友好的问候都是多余的。 ” 

未发布 【教程】Edraw Max(亿图图示)基本操作图文详解
by Harriet666 keys 分享 1499154382107
Edraw Max亿图图示设计软件是一款功能十分强大的图形图表设计软件,使用方便、操作简单。如果你会用word,那么用亿图就绝对没有问题。如果你是新手,那么你也可以快速上手使用。本文以创建思维导图作为例,详细的介绍一下亿图软件的几个基本的操作方法吧!目前Edraw Max(亿图图示)在线订购享75折优惠活动正在进行中,欢迎您下载、购买进行运用!
 
Edraw Max(亿图图示)V8.7最新版点击下载>>>
 
一、快速创建图表
  1. 打开亿图软件,点击新建,在“预定义模板和例子”中选择所需的绘图类型。
  2. 从右侧模板和例子中,选择从模板或者例子中创建。
 
二、连接形状
在打开模板或者例子的时候,相关的符号库就会被打开。只需将您需要的形状符号拖拽到绘图页面即可开始绘图。
  1. 将左侧符号库中的图形拖拽至绘图页面,或者双击即可。
  2. 将鼠标移动至图形、符号上就会自动显示它的浮动按钮。
  3. 点击浮动按钮即可为形状添加主标题。
  4. 点击”主标题”形状四周的按钮即可快速添加副标题。
  5. 在思维导图中的形状会自动连接起来。
温馨提示:亿图根据图表的不同特点设计相应的形状。在绘制流程图的的时候,流程图的基本符号可以从图片显示的四个方向进行连接。
 
三、旋转图形
  1. 在流程图的相关图形、符号上方移动光标,直到显示蓝色的自动连接箭头。
  2. 点击朝向您需要连接图片方向的蓝色的箭头,点击图形、符号右上角的动作按钮,可以快速替换图形。
  3. 点击该图形,旋转图形上方的圆形控制点可以旋转图形。
  4. 拖拽绿色控制点改变大小。
注意: 选中的控制点就会变成橘红色。指针就会变成箭头显示方向。
 
四、为形状添加文本
  1. 双击需要添加文本的形状。
  2. 输入文本。
  3. 点击绘图页面的任意空白区域或者按 ESC 键完成输入文字。
  4. 同理,双击连接线也可添加文本。
温馨提示:有很多形状自带浮动按钮,点击便可以查看它的快捷功能。或者右击一个形状查看它的快捷菜单。比如组织构图,您就可以点击浮动按钮添加下级或者同级。这些形状会自动连接显示层级关系。
 
五、美化主题
  1. 打开“页面布局”菜单下的“主题”,即可一键切换页面主题风格。
  2. 在绘图页面底部移动光标到“颜色条”,可对图形或者线条的颜色快速进行修改。
  3. 软件右侧工具栏中,也可以对图图形填充和线条颜色进行修改。
  4. 思维导图菜单中,可以通过软件内置的“思维导图主题”快速美化主题。
 
PS:以上只是亿图所有功能中一些最基本的操作方法,如果您想要更深入的了解亿图的各种操作、使用方法,请继续关注。
在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
by newghost keys 开源OurJS OurJS 1407733073259
此文是介绍如何在Amazon的一年免费计划上安装Node.JS, NPM还有搭建OurJS博客系统。这里选用的操作系统是社区版Debian,Debian和Ubuntu的操作指令是一脉相承的,再加上之前玩过一段时 间的Raspberry PI,个人比较熟悉,以下的安装过程其实同样适用于树霉派(安装node.js和NPM那一部分)。

 近期热门 - 点击最多
  1. React结合vite使用vue3,在纯typescript的react hooks中使用vue
  2. valtio基于Proxy代理比redux\zustand更简洁的react状态管理库
  3. React Native为http网络请求添加timeout超时异常处理: 用XMLHttpRequest替换fetch发送的区别
  4. React Native使用fetch发送http登陆验证请求失败:无法读取set-cookie并显示network request failed
  5. 克服Redux的缺点在React/Native中使用消息队列,pubsub-js更加简洁的组件间通信和状态传递方法
  6. Springboot+Gradle+Mysql+Jpa最简单实例教程
  7. SpringBoot+Spring6入门指南: 使用命令行快速搭建restful web api模板
  8. 如何通过 winax 的 ActiveXObject 或 Excel.Application 往 excel 中插入一张图片
  9. node.js用activex/com+自动化读写excel时查询接口、参数的调试方法
  10. TypeScript定义数字范围类型即仅包含【小时:分钟】的时间类型,每天指定时间点执行任务

  全端社区 - 最新回复
  1. valtio基于Proxy代理比redux\zustand更简洁的react状态管理库
  2. Windows与Mac通过git ssh和rsync实现文件共享互传
  3. Windows与Mac通过git ssh和scp实现文件共享互传
  4. React结合vite使用vue3,在纯typescript的react hooks中使用vue
  5. 使用PubSub-JS时ReactNative在后台运行一段时间唤醒后,组件无法scribe到publish的事件,typescript实现一个事件订阅发布组件
  6. React Native为http网络请求添加timeout超时异常处理: 用XMLHttpRequest替换fetch发送的区别
  7. ReactNative获取Android/iOS的MAC/IP地址: react-native-device-info模块的安装与使用
  8. React Native使用fetch发送http登陆验证请求失败:无法读取set-cookie并显示network request failed
  9. 克服Redux的缺点在React/Native中使用消息队列,pubsub-js更加简洁的组件间通信和状态传递方法
  10. Springboot+Gradle+Mysql+Jpa最简单实例教程

  开源的 OurJS
OurJS开源博客已经迁移到 OnceOA 平台。

  关注我们
扫一扫即可关注我们:
OnceJS

OnceOA