未发布 Windows 10用于Fluent Design的UWP社区工具包蓄势待发 Microsoft继续为即将推出Windows 10 FCU(Fall Creators Update)在做着准备工作其中部分工作是目前正在开展的开发者工具和资源的升级。已完成的工作包括:Visual Studio 2017 15.4版已支持UWP应用使用.NET Standard 2.0;UWP社区工具包(UCT,UWP Community Toolkit)的升级已完成,可以使用Microsoft新提供的“流畅设计语言”(Fluent Design Language)。“流畅”体系最终将成为新的Windows 10用户界面。
UCT使得Windows 10开发人员及对该平台感兴趣的人可以查看UWP应用的构建方式,并试用UWP平台提供多种可用控件。UCT 2.0推出了四个新添加的控件,分别是InAppNotification、TextToolbar、Expander和Menu。其中Menu控件已完成升级,支持下划线特性和非字符串内容, 同时改进了处于非缺省位置菜单的动画和行为。
InAppNotification控件为UWP应用提供了一种通知窗口生成动作,类似于IE在下载文件时所给出的通知窗口。Textbar空间提供了富文本或Markdown格式文本的编辑功能。该控件还支持用户使用定制的Formatter对象添加对更多格式的处理功能。
Microsoft将在转向UCT第二版后不再提供对VS2015的支持,开发人员应使用VS2017。Microsoft已经给出了UCT的入门文档,并在Windows Store上提供了一些可构建UCT演示的例子应用。工具包的源代码以MIT许可提供于GitHub上,其中包括了完整的发行说明。(例子应用是使用C#编写的。) 未发布 jQuery JavaScript的综合性UI组件库jQWidgets更新至v5.4.0丨附下载 jQWidgets是一个基于jQuery JavaScript的综合性和创新性的HTML5 UI组件库,旨在帮助开发者创建专业、跨平台的Web应用程序,并最大限度的节省开发时间。jQWidgets包含30多种UI组件,是最快的JavaScript UI框架之一。
jQWidgets v5.4.0更新内容:
改进:
修复:
试用、下载、了解更多产品信息请点击"咨询在线客服"

未发布 一体化建模仿真平台20-sim v4.6.3发布丨附下载 20-sim是一种机电一体化系统的建模和仿真程序。利用20-sim可以像绘制工程方案一样灵活地的键入模型。这些模型能用于仿真和分析多域动态系统的特性,也可以创建控制系统,甚至可以生成C代码并用于快速原型设计和HIL仿真。
【20-sim v4.6最新版点击下载】
一体化建模仿真平台20-sim v4.6.3发布。此版本是一个维护版本,主要修复了以下问题:
编辑器
修复:当“名称”文本不在矩形内时,无需重新调整图标中的矩形。
改进:重新调整矩形应考虑到网格。
修复:SVG相关内存泄漏。
修复:当通过单键开关替换多键接点后,将单个端口连接到多端口绑定元件时出现异常。
修复:带有掩码的库块可能会触发isRelease异常。
改进:模型>处理>警告/错误>“端口未使用”重命名为“电源端口未使用”,因为它不适用于信号端口。
运动配置文件编辑器:修复帮助按钮不可用的问题。
修复:全局参数的工具提示在其他子模型中使用时未显示描述性注释。
修复:在此库块的搜索操作后插入时,过滤器编辑器无法打开。
图标编辑器
界面编辑器
线性系统编辑器
3D动画编辑器
3D力学编辑器
Processing
修复:并非所有句法错误都会从全球关联编辑器报告给用户
修复:当“Optimize divisions”启用时,某些型号的处理可能会失败
修复:当按“保存”时,20-sim会尝试检查当前的子模型。这不应该完成,因为当前的子模型可能还没有完成。
Library
模拟器
脚本
修复:防止模拟期间更改子模型。
修复:包含“&”的路径中的模型无法使用脚本打开。
改进:在xxsimSaveModel函数中接受斜杠语法。
Python:修复set_implementations()不接受Python 3.x下的dict的问题。
Python:修复各种脚本问题。
Python:添加get_version()函数(返回20-sim版本)
Octave:添加xxsimGetVersion()函数(返回20-sim版本)
Octave:增加了Octave 4.2.0的支持(Windows,32位)
C代码生成
特点:C / C ++代码生成模板现在可以告诉20-sim这个模板支持哪些集成方法。支持在将来版本的模板中可变步长集成方法。
修复:使用两个反斜杠的字符串参数的C代码生成三个反斜杠而不是四个。
修复:在生成的子模型之外分配的全局字符串参数生成为空字符串。
文件
入门手册:改进各种更正和阐述。
参考手册:修复树中的函数名不能以capital开头的问题。
参考手册:删除Windows XP和X-file格式(不再支持)
文档生成:修复由于命名空间问题,XML文档生成的SVG文件无法在其他工具中打开的问题。
未发布 矢量图形引擎库VectorDraw Developer Framework 更新v7.7011.0.3 
VectorDraw Developer Framework(VDF)是一款构建2D、3D图形并用于应用程序可视化的矢量图形引擎库。有了VDF提供的功能,您可以轻松地创建、编辑、管理、输出、输入和打印2D和3D图形文件。该库还支持许多矢量和栅格输入和输出格式,包括本地PDF和SVG导出。
VectorDraw Developer Framework点击下载>>>
VectorDraw Developer Framework(VDF)v7.7011.0.3更新内容:
WebJS
新增需求
| 版本 | 需求 |
7.7011.0.1 | 70001006 支持webgl渲染模式的webgl图像 |
| 70001016 支持webgl节剪辑 |
| 70001019 支持使用scriptCommand hatch绘制阴影边框 |
| 70001024 使用鼠标进行缩放 |
| 70001029 实体选择回调 |
Converter
新增需求
| 版本 | 需求 |
| 7.7011.0.1 | 70001015 具有相同名称的vdXproperties导出不正确 |
漏洞
| 版本 | 需求 |
| 7.7011.0.1 | 70001009 DXF代理对象读取出错 |
| 70001020 某些DWF文件未正确打开 |
| 70001025 DGN Xrefs的问题 |
| 70001033 Layout paper未正确初始化 |
| 7.7011.0.2 | 70001040 SPLines在DWG中未正确导出 |
vdDXF
漏洞
| 版本 | 漏洞 |
| 7.7011.0.1 | 70001011 HANDLE类型的XProperty在DXF中未正确导出 |
Engine
新增需求
| 版本 | 需求 |
| 7.7011.0.1 | 70001008 改进ClearEraseItems方法的速度 |
| 70001012 MergeSelection方法用于传递对象的GUIDs |
| 70001027 虚拟机中的OpenGL问题 |
| 70001034 能够设置UCS图标字母的颜色 |
| 7.7011.0.2 | 70001036 外部引用对话框有一个支持路径按钮 |
漏洞
| 版本 | 漏洞 |
| 7.7011.0.1 | 70001007 当文本具有斜角时,EditText和AddText命令不会正确显示光标 |
| 70001010 点上的多点折线未正确显示 |
| 70001013 Inserts Inside Blocks层是处于ON状态时仍不可见 |
| 70001014 图层组和滤镜在删除后仍会保存到DXF中 |
| 70001017 图像在nonused Block中使用时会被删除 |
| 70001018 线型折线显示不正确 |
| 70001021 RenderToGraphics和RenderToDC会清除目标图形上下文的背景 |
| 70001022 尺寸对象未正确导入PDF |
| 70001026 在vdraw Idle中很少会随机出现exeption |
| 70001030 Bhatch命令为创建的polyhatch添加白色作为fillcolor |
| 70001031 用户选择部分文字的拉伸命令会出现错误 |
| 70001032 vdMtext对象没有对齐 |
| 7.7011.0.2 | 70001035 vdLayout DrawCCSAxis showOnOrigin参数无法正常工作 |
| 70001037 用户尝试打开特定文件后应用程序瘫痪 |
| 70001038 图像不能从EMF正确导入 |
| 70001039 Block名称不适用于DWG |
| 70001042 具有Shape段的LineTypes不能在3d中与ExcludeFromList Draw3DFlag正常显示 |
未发布 全面的.NET图像处理包DotImage v10.7.0.7发布丨附下载 DotImage
Atalasoft DotImage 是一款功能完善的图像处理包,它主要针对.NET的开发。它为基于.Net框架开发的Windows应用程序以及基于IE的Asp.Net程序提供高级的图像处理功能。DotImage 提供了很多Microsoft .NET Framework一样的设计模式,并向开发者提供功能丰富,高性能,授权方式灵活的对象模式。
DotImage v10.7.0.7更新内容
v10.7.0.7中的修复的问题
- [TiffDecoder]Customer图片会导致TiffDecoder出现SEHException异常。
- [AdvancedDocClean] LineRemovalCommand在某些图像上会引起不可修复的System.AccessViolationException,从而破坏主机进程。
- [AbbyyEngine] OcrTableRegion.Cells没有被填充。
- WebDocumentViewer getDocumentInfo对removePage的调用不成功。
上一个版本中修复的问题
- 在特定的PDF中使用修复功能会导致新版本出现异常。
- [MVC] NuGet库中缺少Atalasoft.dotImage.WebControls.MVC(包括x86和x64)。
- [WDV] Async方法可能会在浏览器页面刷新期间/之后引起控制台发生错误。
- 使用PdfDocument.Save格式保存时,Multipage PDF页面会引用前几页的资源。
- 保存PDF时,无效的PDF属性值会引起异常。
- [PdfAnnotationDataExporter]使用OverwriteExistingAnnotations = true保存到特定图层时,会覆盖掉上一层。
- PDF417条形码不可读取。
- Customer DWG文件在DwgDecoder中呈现时丢失图像。
- WebDocumentViewer会调用触发了ThreadAbortException的Response.End。
- PdfDocument.Repair对于某些格式不正确的链接可能会删除而不是修复。
- [PdfTextDocument]文本提取结果在某些文档上使用时会丢失内容。
- 当SelectionMode = ThumbnailSelectionMode.MultiSelect时WinForms ThumbnailView / FolderThumbnailView SelectionIndexChanged会触发两次。
- RawDecoder注册时,Customer file会引起System.AccessViolation异常。
- [PdfGeneratedDocument] PdfTextLine会忽略通过构造函数传递的FillColor和OutlineColor值。
- [PdfDocument]一些PDF文件在PdfDocument中打开时会发生StackOverflow问题。
- [PdfDocument]使用PdfDocument / PdfAnnotationDataImporter打开一些PDF时会出现Overflow问题。
- WebDocumentThumbnailer:当tabular:true set时,滚动条未正确更新。
- 客户在Logger中报告的竞争条件/非线程安全行为。
- “不支持Colourspace转换”的Customer tiffs无法打开。
- 755266:WDV - 打开non-relative web根路径将导致WDV保存失败。
- [PdfDocument]如果我们多次将新页面添加到文档时,Adobe Acrobat将无法读取pdf文件。
- 只有页面可见时,WebDocumentViewer Rotate方法才会更新。
- [OfficeDecoder]无论解码器分辨率如何设置,Office文件始终呈现默认的DPI(大多数系统上为96)。
- [PdfEncoder]使用PdfCompressionMode.Segmented保存大文件(大量页面)会发生内存的问题。
- [BarCodeReader] DataMatrix条形码读取速度非常慢
- PdfCompressionMode.Segmented强制将灰度图像变为黑白,且这种行为没有记录。
- PdfDocument打开/保存时Customer PDF被损坏。
- [OfficeDecoder]部分office文件的表格标题中缺少内容。
- 带有AnnotationStreamWritten事件的WDV 10.7中的行为发生变化。
- 载入注释中的WDV regression。
- [DotTwain] HP scanners DeviceEvent 会使device.State进入无效状态。
- Barcoding.Reading.BarcodeReader没有读取到相应的客户代码。
- 10.7 WDV更改会破坏WingScan-only的许可。
- [PdfAnnotationDataExporter] EmbeddedImageAnnotation会增加目标PDF文件大小。
- [BarCodeReader] - 在其他引擎中读取的PDF-417条形码的Customer images在BarCodeReader中无法读取。
- [BarCodeReader]当前的BarCodeReader引擎无法读取旧的9.x(Inlite)引擎读取的条形码的全部内容。
- [PdfDocument]Customer PDF会引起关于MLPdfLabColorSpace的PdfException异常。修复后提示成功,但所有内容也会丢失。
未发布 MailBee.NET Objects显示HTML/纯文本邮件教程(三):在Web应用程序中显示 MailBee.NET Objects是一款为创建、发送、接收以及处理电子邮件而设计的健壮、功能丰富的.NET控件。几行代码便可为应用程序添加E-Mail支持,简单高效。具备“必需”以及独特的功能,这些控件帮助开发人员简单快速地将复杂的电子邮件功能添加到他们的应用程序中。
本文主要介绍了在Web应用程序中显示HTML/纯文本邮件的代码示例。目前MailBee.NET Objects在线订购享75折优惠正在进行中,欢迎您下载试用版进行运用!
由于Web应用程序在呈现HTML而不是纯文本的Web浏览器中运行,因此应将纯文本数据转换为HTML,以便在浏览器中查看此数据。这也适用于在HTML容器中渲染数据的桌面应用程序。
MailBee可以邮件解析期间自动将纯文本内容转换为HTML。为了调整邮件解析过程,MailMessage类提供了Parser属性。
C#
MailMessage msg = pop.DownloadEntireMessage(1);
msg.Parser.PlainToHtmlMode = PlainToHtmlAutoConvert.IfNoHtml;
VB.NET
Dim msg As MailMessage = pop.DownloadEntireMessage(1)
msg.Parser.PlainToHtmlMode = PlainToHtmlAutoConvert.IfNoHtml
上面的节点从服务器中下载邮件,并让MailBee自动将邮件的纯文本转换为HTML(如果邮件还没有HTML版本)。因此,你将得到可以在ASP.NET应用程序中显示的HTML邮件,如下所示:
C#
Response.Write(msg.BodyHtmlText);
VB.NET
Response.Write(msg.BodyHtmlText)
如果你还需要在HTML容器中显示邮件标头,你可以使用HeadersAsHtml属性替换邮件的所有标题中的“<”,“>”,“和”和“”字符,其HTML表示形式为:
C#
msg.Parser.HeadersAsHtml = true;
Response.Write("From: " + msg.From.ToString());
VB.NET
msg.Parser.HeadersAsHtml = True
Response.Write("From: " + msg.From.ToString())
未发布 扫描识别工具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的用户带来帮助,接下来还会有更多的相关教程,敬请期待!