我们针对 Visual Studio 2017 的多个关键领域进行了重点研发——包括改进基础部件、提供五星级的云和移动开发体验,以及提升 DevOps 功能,以确保 Visual Studio 2017 可以助力每一位开发者在各种平台上开发各类应用。
在发展 Visual Studio 2017 这一全新版本时,我们将云和移动开发置于最重要的位置。为了简化云开发流程,内置的各项工具将为您提供有关.NET Core、Azure 应用、微服务、容器等应用开发的完整集成功能,甚至现在可以更轻松地由 IDE 直接开发和部署 Azure 应用和服务。Visual Studio 2017 with Xamarin 让你能够通过先进的调试和分析工具更加快速地为安卓、iOS 和 Windows 平台开发移动应用。
我们也重视聆听用户心声,并清楚地了解到用户希望 Visual Studio 变得更为快速、更精简,即使所面对的应用开发和项目愈加庞大。因此,我们将为用户提供全新的安装体验,让一切变得轻便而模块化。为提高 Visual Studio 的性能,我们还增强了多项功能。Visual Studio 2017 还将交付多项全新特性,帮助开发团队能够轻松地实践现代化的 DevOps 做法,更为快速而持续地应对市场变化。为了帮助开发者更好地把自己的数据库嵌入 DevOps,加速发布周期,Redgate Data Tools 工具现已加入 Visual Studio Enterprise 2017 服务当中。
![]() | Code-First服务器对Remoting SDK 9最重要的加强是增加了新的Code First服务器。忽略在Service Builder中手动定义服务接口,并保持RODL和代码同步。 只需在代码中定义你的服务,Remoting SDK就完成了。同时支持.NET和Delphi服务器。
| |
![]() | 所有新的CodeGen使用开源CodeGen4框架可以完全修改和简化Remoting SDK客户端存根的代码生成。实际上Remoting SDK-specific codegen logic也是开源的,如有必要,你可以很容易地调整它来满足的需要。 这是Mac和Windows 的rodl2code命令行工具并集成到Fire,Visual Studio,Delphi和Service Builder的补充。
| |
![]() | Mac新的Service Importer app我们还为Mac创建了一个全新的应用程序,用于连接到远程服务,导入其RODLs并使用CodeGen4为所有语言生成必要的代码存根。开发人员在不使用IDE与专用的Remoting SDK集成的情况下仍然可以轻松连接。
| |
![]() | 在Swift中创建构建服务器Mac和iOS开发人员现在可以在他们的Mac(使用我们免费的Swift编译器和IDE、Fire)上的Swift中创建服务器应用程序,并将它们部署到Linux、Windows和Mac OS X服务器中。 阅读有关Fire的更多信息或浏览Remoting SDK 文档。 当然,你也可以在Fire、for Cocoa、Java / Android和.NET中创建客户端应用程序。
| |
![]() | 完全支持SwiftRemoting SDK 9使用Xcode或Elements添加了在Swift中编写客户端的功能。支持Swift CodeGen并优化和注释了该库。 | |
![]() | 连接服务器的新工作流程连接服务器的新工作流程 在所有三个IDE中,使用新的“连接到服务器”菜单选项可以简化将任何客户端应用程序项目连接到服务器的过程。只需将IDE指向你的服务器的URL,你的项目将自动变成一个Remoting SDK客户端,并创建所有必要的引用和代码存根。 新的.remoteRODL文件让你的客户端项目与服务器保持同步,并且一个新的ServerAccess类存根将帮助你开始调用你的服务器。
| |
![]() | 改进SSL&TSL安全通信比以往更重要,Remoting SDK可以让你的服务器通过HTTPS和TLS进行安全通信变得非常容易。无论你使用的是自动生成、自签名还是已购买的证书,现在都可以设置两个属性来实现安全连接。
| |
![]() | 减少样板代码我们已经从根本上抽出了很多需要的板卡代码来使一个服务器完全运行起来。 使用RO9,你现在可以使用一行虚拟代码启动一个服务器 - 包括支持运行组合模式(GUI、命令行和后台服务)、设置SSL等。
| |
![]() | 创建watchOS应用程序Remoting SDK 9增加了从Apple Watch apps连接到你的服务器的功能,让你的用户可以直接在手腕上访问网络驱动的信息。
| |
![]() | 创建tvOS应用程序同样,你现在可以在你的tvOS apps中使用Remoting SDK客户端功能,将你的数据和服务器内容呈现到大屏幕上。 watchOS和tvOS客户端库都使用与现有的iOS和OS X库相同的代码库,因此在所有四个Apple平台上共享客户端代码非常容易。
|
2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!
1 2 3 | /* Property */ /* Scan pages in 200 DPI */ DWObject.Resolution = 200; |
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 |
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 > |
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 > |
1 2 | /* sImageIndex is the index of the image you clicked on*/ OnMouseClick(short sImageIndex) |
1 2 3 | function DynamicWebTwain_OnMouseClick(index) { CurrentImage.value = index + 1; } |
1 2 3 | DWObject.RegisterEvent("OnPostTransfer", function(index) { CurrentImage.value = index + 1; }); |
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的用户带来帮助,接下来还会有更多的相关教程,敬请期待!
GIS Map Server是一款地图服务器控件,它将动态地图功能添加到了GLG工具包中并能与工具包一起使用或独立使用。GLG地图服务器控件将动态地图功能添加到了GLG工具包中并能与工具包一起使用或独立使用。当与工具包一起使用时,一个综合的GIS对象将负责完成变焦、摇摄、协同转换与地图转化,还会将地图服务器整合到GLG绘图功能中。当工具包在处理地图顶端的动态图标的转换时,还能实时地对它们进行更新。
GIS Map Server更新至v3.6版本,增加了航空影像数据集等功能。
【Dynamsoft Camera SDK v5.2点击下载>>>】
如今手机应用市场越来越大,其中创新、独特的产品也越来越多。APP市场最好的地方就是无论是iTunes还是Google Play中,你都有平等的机会参与竞争和获得成功。这是一个公平的竞争环境,吸引着无数优质的开发商。专家们已经预测,APP市场在2020年将翻一番,价值可以达到101亿美元。
无论你是一个多优秀的开发者,在开始新的APP应用时也应该注意一些事情。在启动一个APP项目时你应该记住和经过几个重要的步骤来确保它能成功。