未发布 扫描识别工具Dynamic Web TWAIN使用教程:建立一个“Hello World”扫描页面 Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。
本文教你Dynamic Web TWAIN中只需3个步骤在5分钟内创建一个Web扫描应用程序的方法!
步骤一:启动一个Web应用程序
1.1 将Dynamsoft的Resources文件夹复制到您的项目中
Resources文件夹通常在C:\Program Files (x86)\Dynamsoft\Dynamic Web TWAIN SDK {Version Number} {Trial}\
1.2 创建一个空的HTML页面
请将空的html页面与Resources文件夹放在一起,如下所示:
步骤二:将Dynamic Web TWAIN添加到HTML页面
2.1 包含两个Dynamsoft JS文件
2.2 添加一个Dynamic Web TWAIN容器
1 | <div id="dwtcontrolContainer"></div>
|
注意: “dwtcontrolContainer”是div的默认ID。如有必要,您可以在文件dynamsoft.webtwain.config.js中更改它。
步骤三:使用Dynamic Web TWAIN
3.1 添加一个扫描按钮和最小的脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <input type="button" value="Scan" onclick="AcquireImage();">
<script type="text/javascript" data-filtered="filtered">
var DWObject;
function Dynamsoft_OnReady(){
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
}
function AcquireImage(){
if(DWObject) {
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.SelectSource();
DWObject.OpenSource();
DWObject.AcquireImage();
}
}
</script>
|
3.2 查看完成的代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <title data-filtered="filtered">Hello World</title>
<script type="text/javascript" src="Resources/dynamsoft.webtwain.initiate.js" data-filtered="filtered"> </script>
<script type="text/javascript" src="Resources/dynamsoft.webtwain.config.js" data-filtered="filtered"> </script>
<input type="button" value="Scan" onclick="AcquireImage();">
<div id="dwtcontrolContainer"> </div>
<script type="text/javascript" data-filtered="filtered">
var DWObject;
function Dynamsoft_OnReady(){
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
}
function AcquireImage(){
if(DWObject) {
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.SelectSource();
DWObject.OpenSource();
DWObject.AcquireImage();
}
}
</script>
|
3.3 查看正在运行的扫描页面
如果你打开项目中的Hello World页面,它应该是这样的:
现在,您可以点击“扫描”按钮选择一个设备,如下所示:
注意:
- 选择来源对话框中只列出了TWAIN兼容设备。如果连接的扫描仪没有显示在列表中,请按照这篇文章排除故障。
- 如果您手边没有扫描仪,则可以安装虚拟扫描仪 - 由TWAIN工作组开发的扫描仪模拟器 - 用于测试目的。
扫描完成后,图像将显示在内置的Dynamic Web TWAIN查看器中:
如果您安装了Dynamic Web TWAIN的30天试用版,您可以在C:\Program Files (x86)\Dynamsoft\Dynamic Web TWAIN SDK {Version Number} {Trial}\Samples\Getting Started\获取完整的Hello World应用程序。
本次教程到此结束,希望能对Dynamic Web TWAIN的用户带来帮助,接下来还会有更多的相关教程,敬请期待!
未发布 Essential Studio for ASP.NET Web Forms发布2017 v2,新增自定义树形网格工具栏等 Essential Studio for ASP.NET Web Forms是一个帮您轻松创建商业Web应用程序的ASP.NET界面控件,其包含了商业Web应用程序开发中所需的所有控件,如grids、charts、gauges、menus、calendars、editors等等。同时,Essential Studio for ASP.NET中高性能的界面控件库还允许您的应用程序浏览和创建Excel、Word和PDF格式的文件。
Essential Studio for ASP.NET Web Forms更新2017 v2版本,增加大量新功能包括自定义树形网格工具栏、文本注释等。
通常
支持资源文件本地化
支持资源文件本地化,根据应用程序或组件生成文本。


图表
饼状图系列
增加创建饼状图的新功能。

打印
支持打印图表。

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

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

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

DocIO
增强Word转换PDF功能
DocIO现在支持Word到PDF转换期间的方程式字段。

甘特图
导出PDF
甘特图内容现在可以导出为PDF。

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

映射展开状态
最初加载时,可以映射记录的展开状态。
列表框
排序
现在可以按升序或降序自动排序列表项。

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

PDF
增强PDF安全功能
现在支持PDF 2.0安全功能(AES Revision 6)。

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

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

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

所有Pivot控件通用
Mondrian XML/A连接(客户端模式)
所有数据透视控件都可以通过不同版本的XML/A连接从Mondrian中检索多维数据,仅适用于客户端模式。
演示
注释功能
可以在PowerPoint演示文稿中创建和修改注释。

富文本编辑器
粘贴清理
从Word或网页(HTML)复制的内容将在粘贴到富文本编辑器时进行预处理,清理和格式化以获取正确的HTML。
时间表
隐藏周末
周末可以隐藏在调度程序中,并在所有视图中只显示工作日。

树型网格
自适应渲染
树型网格控件的UI已经在移动环境中得到了改进。


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


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

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

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

XlsIO
Excel到PDF转换中的图标设置
Essential XlsIO支持使用“仅显示图标”和“反向图标顺序”选项进行PDF转换的自定义图标设置。

增强图表转换图像功能
将图表转换为PDF文件或图像时,图表元素(如标题和显示单元)现在支持富文本和具有不同标记的图表系列。

数据透视表自定义排序
数据透视表列可以通过字符串数组或设置自定义位置进行排序。

表格过滤器
可以根据文本、数值和日期过滤Excel表格行。

未发布 15个适合初学者学习C#编程语言的免费在线资源丨附地址 C#是一种通用编程语言,广泛应用于开发企业应用程序。C#是由Microsoft开发的,是.NET框架的主要语言。C#主要用于创建控制台应用程序、图形用户界面(GUI)应用程序和Web应用程序等。这些应用程序在个人计算机、Windows移动设备和嵌入式系统上运行。C#提供了一系列功能,例如自动管理内存和垃圾回收。它支持数据封装和继承和多态性,并且包括对COM技术(组件对象模型)和基于Windows的应用程序的本地支持。
如果你准备学习C#编程语言,那么有大量的在线资源非常适合初学者学习。这里列出了15个在线资源可以让你逐步学习C#编程。
未发布 Dynamsoft Camera SDK 发布v6.0,增加新的文档模式丨附下载 Dynamsoft Camera SDK提供了JavaScript api,使您可以轻松地从浏览器兼容的USB视频类(UVC)网络摄像头捕捉图像和视频流。使用基于浏览器的网络摄像头库,您可以将直播视频流捕获到一个容器并在您的web应用程序中用几行代码获取图像。
Dynamsoft Camera SDK 6.0新版本添加了一个新的文档模式,它有助于扩展你的文档捕获应用程序,并通过网络摄像头进行文档扫描。该文档模式支持文档边框检测、自动裁剪和图像处理(透视校正,噪声消除等)。内置的HTML5文档编辑器也可轻松编辑捕获的文档图像。
增加了使用UVC摄像机文档图像的新文档模式:
未发布 VintaSoft PDF插件VintaSoftPDF.NET Plug-in更新至v5.6,新增多页查看模式
在WinForms或WPF查看器中显示PDF文档:
在HTML5或SVG查看器中显示PDF文档:
在WinForms和WPF图像查看器中编辑PDF内容:
以多页面查看模式工作时,增加了同时编辑多个PDF页面交互字段的功能。
以多页面查看模式工作时,增加了同时删除多个PDF页面内容的功能。
以多页面查看模式工作时,增加了同时编辑多个PDF页面内容的功能。
以多页面查看模式工作时,增加了将PDF注释和交互式字段从一个页面移动到另一个页面的功能。
增加了新的可视化工具 - PdfContentXObjectTool,它允许从PDF页面查找、突出显示和删除表单或图像。
PDF文档的验证和转换:
使用PDF文档:
创建Web API 2控制器以使用PDF文档(VintasoftPdfApi2Controller类)。
创建Web API控制器以使用PDF文档(VintasoftPdfApiController类)。
创建HTTP处理程序以使用PDF文档(VintasoftPdfHandler类)。
创建WCF服务以使用PDF文档(VintasoftPdfWcfService类)。
优化PDF文档:
增加了删除PDF文档中未使用的资源(PdfDocument.RemoveUnusedNamedResources)的功能。
增加了删除PDF页面的未使用资源(PdfPage.RemoveUnusedNamedResources)的功能。
添加了删除PDF表单中未使用的资源(PdfFormXObjectResource.RemoveUnusedNamedResources)的功能。
优化PDF文档的打包算法。
PDF文档中的文本搜索和文本提取:
在PDF页面、XObject表单或注释中绘制:
使用PDF文档的字体:
编辑PDF内容:
与PDF文档的可视化交互:
未发布 MailBee.NET Objects发送电子邮件(SMTP)教程一:使用SMTP服务器发送消息
Smtp对象提供了多种方法和属性来调整优化发送消息的过程。可以创建一个新的Smtp对象实例,如下所示:
C#:
Smtp mailer = new Smtp();
VB.NET:
Dim mailer As New Smtp()
如果SMTP服务器不需要任何身份验证,那么指定的主机名或它的IP地址就足以连接到此SMTP服务器。
C#:
mailer.SmtpServers.Add("mail.domain.com");
VB.NET:
mailer.SmtpServers.Add("mail.domain.com")
然而,大多数服务器现在要求用户对自己进行身份验证(例如,如果要通过此服务器将电子邮件发送给外部收件人,则必须拥有有效的帐户)。要指定你的帐户凭据,请使用以下代码:
C#:
mailer.SmtpServers.Add("mail.domain.com", "jdoe", "secret");
VB.NET:
mailer.SmtpServers.Add("mail.domain.com", "jdoe", "secret")
根据服务器设置,你可能需要输入整个电子邮件地址,而不仅仅是一个帐户名称(例如,在某些情况下为jdoe@domain.com或domain.com \ jdoe)。
某些SMTP服务器要求客户端进行身份验证,但不支持任何SMTP命令。这些服务器依赖于同一个客户端的最近POP3连接的认证结果(即相同的IP地址)。因为POP3和SMTP服务器通常共享相同的用户帐户数据库。
在发送消息之前,你应该确定内容。例如:
C#:
mailer.Message.From.AsString = "jdoe@domain.com";
mailer.Message.To.AsString = "bill@domain.com";
mailer.Message.Subject = "Hi";
mailer.Message.BodyPlainText = "Hello Bill";
mailer.Message.From.AsString = "John Doe ";
mailer.Message.To.AsString = "Bill (Company Inc), Kathy ";
mailer.Message.Subject = "The document";
mailer.Message.BodyHtmlText = "The document body";
mailer.Message.From.Email = "jdoe@domain.com";
mailer.Message.From.DisplayName = "John Doe";
mailer.Message.To.AsString = "Kathy ";
mailer.Message.Cc.Add("bill@domain.com", "Bill Smith");
mailer.Message.Subject = "News";
mailer.Message.BodyPlainText = "News body";
VB.NET:
mailer.Message.From.AsString = "jdoe@domain.com"
mailer.Message.To.AsString = "bill@domain.com"
mailer.Message.Subject = "Hi"
mailer.Message.BodyPlainText = "Hello Bill"
mailer.Message.From.AsString = "John Doe "
mailer.Message.To.AsString = "Bill (Company Inc), Kathy "
mailer.Message.Subject = "The document"
mailer.Message.BodyHtmlText = "The document body"
mailer.Message.From.Email = "jdoe@domain.com"
mailer.Message.From.DisplayName = "John Doe"
mailer.Message.To.AsString = "Kathy "
mailer.Message.Cc.Add("bill@domain.com", "Bill Smith")
mailer.Message.Subject = "News"
mailer.Message.BodyPlainText = "News body"
内容完成后,你就可以点击发送了。
C#:
mailer.Send();
VB.NET:
mailer.Send()
未发布 Microsoft将持续交付功能添加到Visual Studio、Azure Microsoft正在向Visual Studio 2017 IDE中添加持续交付功能。
Visual Studio扩展的持续交付工具允许开发人员在Visual Studio团队服务ALM平台上设置自动构建、测试和发布管道。它适用于面向Azure应用服务和Azure容器服务的ASP.Net 4和ASP.Net Core应用程序。开发人员可以通过IDE中的通知来监视管道,提醒他们连续集成运行中发生的生成失败信息。