未找到

未发布 【示例教程】如何用leadtools创建一个OCR驱动的计算器
by Harriet666 keys 分享 1519808939687

Leadtools 19总套包下载>>>

日常工作和业务中会有一些图片中的计算公式等需要计算,这个代码片断显示了LEADTOOLS OCR可以用来检测、识别和执行简单的数学命题,如“2 + 2”。
static void SimpleOCRCalculator(string filePath)
      {
         RasterCodecs codecs = new RasterCodecs();

         RasterImage image = codecs.Load(filePath);

         string[] calculations;
         using (IOcrEngine engine = OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false))
         {
            engine.Startup(null, null, null, null);
            IOcrPage page = engine.CreatePage(image, OcrImageSharingMode.None);

            page.AutoZone(null);
            page.Recognize(null);

            calculations = new string[page.Zones.Count];

            for (int i = 0; i < page.Zones.Count; i++)
            {
               calculations[i] = page.GetText(i);
            }

            engine.Shutdown();
         }

         Dictionary<string, Action<double, double>> operands = new Dictionary<string, Action<double, double>>();
         operands.Add("+", new Action<double, double>(delegate(double a, double b) { double ans = a + b; Console.WriteLine("{0} + {1} = {2}", a, b, ans); }));
         operands.Add("-", new Action<double, double>(delegate(double a, double b) { double ans = a - b; Console.WriteLine("{0} - {1} = {2}", a, b, ans); }));
         operands.Add("x", new Action<double, double>(delegate(double a, double b) { double ans = a * b; Console.WriteLine("{0} * {1} = {2}", a, b, ans); }));
         operands.Add("/", new Action<double, double>(delegate(double a, double b) { double ans = a / b; Console.WriteLine("{0} / {1} = {2}", a, b, ans); }));

         for (int i = 0; i < calculations.Length; i++)
         {
            string equation = Regex.Replace(calculations[i], @"\n|\r| ", "");
            string[] ops = new string[] { "+", "-", "x", "/" };

            for (int j = 0; j < ops.Length; j++)
            {
               int index = equation.IndexOf(ops[j]);

               if (index > 0 && index < equation.Length)
               {
                  string op1 = equation.Substring(0, index);
                  string op2 = equation.Substring(index + 1);

                  double arg1 = double.Parse(op1);
                  double arg2 = double.Parse(op2);

                  operands[ops[j]](arg1, arg2);

                  break;
               }
            }
         }

         codecs.Dispose();
         image.Dispose();
      }

 

用于测试的图像如下。

resource

未发布 图像注释插件VintaSoftAnnotation.NET Plug-in更新至v8.6丨75折优惠
by Harriet666 keys 分享 1519808496858
VintaSoftAnnotation.NET Plug-in是VintaSoft Imaging .NET SDK图像插件,可支持TIFF、PNG、JPEG格式图像以及PDF文档的批注。目前VintaSoftAnnotation.NET Plug-in在线订购享75折优惠正在进行中,欢迎您下载试用版进行运用!
 
 
VintaSoftAnnotation.NET Plug-in v8.6更新内容:

WinForms注释图像查看器(AnnotationViewer类):

  • 支持多页面查看模式。
  • 增加了在多页图像查看模式下将注释从一个页面移动到另一个页面的功能。
WinForms注释可视化工具(AnnotationTool类):
  • 支持多页面查看模式。
  • 增加了一些小的改进。
WPF注释图像查看器(WpfAnnotationViewer类):
  • 支持多页面查看模式。
  • 增加了在多页图像查看模式下将注释从一个页面移动到另一个页面的功能。
WPF注释可视化工具(WpfAnnotationTool类):
  • 增加了对多页面查看模式的支持。
  • 增加了一些小的改进。
注释:
  • 支持以下注释的云和三角形样式的:矩形,椭圆,文本,自由文本,高亮。
  • 添加了使用StampAnnotation.TextAlign属性为Stamp注释指定文本对齐的功能。
演示应用程序:
  • WinForms和WPF的AnnotationDemo应用程序:
    · 增加了在多页面模式下注释图像的功能。
    · 增加了一些小改进。
    · 修复了一些小错误。
  • ASP.NET WebForms和ASP.NET MVC的AnnotationDemo应用程序:
    · 添加了从字体列表中为文本标注选择字体的功能。
    · 增加了一些小改进。
未发布 扫描识别工具Dynamic Web TWAIN使用教程:图像操作
by Harriet666 keys 分享 1512460581008
Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。
 
本文为你介绍Dynamic Web TWAIN中如何进行图像操作,欢迎收藏。

Dynamic Web TWAIN最新版免费下载>>>
 
在Dynamic Web TWAIN中扫描或加载图像时,可以进行图像操作。您可以:
 
1、通过更改属性CurrentImageIndexInBuffer来浏览每个图像
/* Show the 3rd image in the buffer */
DWObject.CurrentImageIndexInBuffer = 2; 
2、通过使用SetViewMode()更改视图模式(除1 * 1或-1 * -1以外)来显示多个图像
/* Show images in buffer with 2 * 2 view */
DWObject.SetViewMode(2, 2);
image018
 
3、旋转,翻转,镜像或裁剪图像等
DWObject.Mirror(0);
DWObject.Flip(1);
DWObject.RotateRight(2);
DWObject.Crop(3,101,243,680,831);
DWObject.RotateLeft(3);
image019
 
另外,您可以通过索引移动/删除图像,也可以一次性移动或删除所有图像。方法是RemoveImage,RemoveAllSelectedImages,RemoveAllImages

【示例教程】如何用LEADTOOLS 实现一个简单的STORE SCU存储客户端
by Harriet666 keys 分享 1519722017492
leadtools提供了封装后的dicom插件,可以非常方便的开发出dicom通讯部分的组件,本篇教程讲解如何使用相关的接口进行代码编写,实现Dicom协议中的CStore存储操作。
 
1.用vs2015创建一个winform项目,引用下面的dll,并在代码里引用
using Leadtools;
using Leadtools.Dicom;
using Leadtools.Dicom.Scu.Common;
using Leadtools.Dicom.Scu;
using Leadtools.MedicalViewer;
using System.Net;
using System.IO;
 
2.创建下面的对象
// CStore highlevel 客户端和服务端对象
        private StoreScu _cstore;
        private DicomScp _server = new DicomScp();
 
3.初始化服务器和客户端参数,
本次用的服务器即是开发包中运行pacs服务器设置程序后,创建的L19_PACS_SCP64
private void initServer() {
            _server = new DicomScp();
            _server.AETitle = "L19_PACS_SCP64";
            _server.PeerAddress = IPAddress.Parse("10.32.1.75");
            _server.Port = 534;
            _server.Timeout = 30;
        }
private void initCstore() {
            _cstore = new StoreScu();
            _cstore.AETitle = "L19_CLIENT64";
            _cstore.HostPort = 1030;
            //存储成功后
            _cstore.AfterCStore += _cstore_AfterCStore;
        }
 
4.执行存储命令
private void 存储ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string filename ="D:\\Xa.dcm";
            _cstore.Store(_server, filename);

        }

保存成功后即可在服务器管理器中,或者使用客户端查询已经存储的图像。
未发布 VintaSoft PDF插件VintaSoftPDF.NET Plug-in更新至v5.6,新增多页查看模式
by Harriet666 keys 分享 1520241862267
VintaSoftPDF.NET Plug-in是一个完全的.NET组件,可用于查看,创建以及编辑PDF文档。该程序库还可用于显示,渲染,创建,转化,注释,打印,保存,修改和编辑PDF文档页面。
 

在WinForms或WPF查看器中显示PDF文档:
  • 当查看器以多页查看模式工作时,增加了同时注释多个PDF页面的功能。
  • 当查看器以多页查看模式工作时,增加了同时填写多个PDF页面交互式字段的功能。
在HTML5或SVG查看器中显示PDF文档:
  • 增加了新的可视化工具 - WebPdfImageExtractorToolJS,可以从PDF页面选择和提取图像。
  • 增加了新的可视化工具 - WebPdfTextSelectionToolJS,可以从PDF页面搜索、突出显示和提取文本。
在WinForms和WPF图像查看器中编辑PDF内容:
  • 以多页面查看模式工作时,增加了同时编辑多个PDF页面交互字段的功能。
  • 以多页面查看模式工作时,增加了同时删除多个PDF页面内容的功能。
  • 以多页面查看模式工作时,增加了同时编辑多个PDF页面内容的功能。
  • 以多页面查看模式工作时,增加了将PDF注释和交互式字段从一个页面移动到另一个页面的功能。
  • 增加了新的可视化工具 - PdfContentXObjectTool,它允许从PDF页面查找、突出显示和删除表单或图像。
PDF文档的验证和转换:
  • 将PDF文档转换为PDF/A格式:
    · 增加了转换包含透明度文档的功能。
    · 增加了将TrueType字体转换为CFF字体的功能。
    · 增加了查看文档中修改列表(ConversionProfileResult类的AppliedCommands属性)的功能。
  • 改进PDF/A转换器。
  • 改进PDF/A验证程序。
  • 修复PDF/A转换器中的一些错误。
使用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页面的格式化文本的功能。提取的文本可以按段落格式化。架构是开放的,并允许使用自定义文本格式算法。
在PDF页面、XObject表单或注释中绘制:
  • 改进了PdfGraphics.DrawString()方法中的换行算法。现在,即使单词中没有空白,算法也会进行优化。
使用PDF文档的字体:
  • 可以判断是否可以使用指定字体对指定文本进行编码的功能。
  • 改进了字体的解析器。
编辑PDF内容:
  • 改进了裁剪PDF页面内容的算法(PdfPage.Crop)。
  • 改进了裁剪PDF表单内容的算法(PdfFormXObject.Crop)。
与PDF文档的可视化交互:
  • 改进了JavaScript注释器。
 
完整更新内容点击查看>>>
未发布 苹果公司透露Siri新发音引擎的内部原理
by Harriet666 keys 分享 1505467031256
苹果公司透露了他们通过深度学习让Siri的发音更加自然的内幕。

iPhone用户使用自然语言向Siri提问,Siri也通过语音回答问题。Siri可以使用21种语言回答问题,遍布全球36个国家。在2017年WWDC大会上,苹果宣布了iOS 11上的Siri将使用最新的文本语音引擎。2017年8月,苹果的机器学习期刊透露了他们是如何让Siri的发音更加自然的。

iPhone上的语音是通过拼接预先录制的人类语音来生成的。先录制几个小时的语音,再把它们拆分成单词,然后再把单词拆成最基本的元素:音素。在生成句子的时候,系统会选择合适的音素,再把它们拼接在一起。
 
为音素选择合适的录音是一件很有挑战性的事情。每一个音素都要与发音相匹配,也要与相邻的其他音素相匹配。旧系统只有几种录音,音素的来源很有限,所以听起来有点不自然。于是苹果决定使用深度学习来确定声音单元在句子中的各种属性。
 
每一台iOS设备都包含了一个小型的预录音素数据库。每一份数据都包含了音频属性:声音频谱的音高和音长。一个经过训练的“深度混合密度网络(deep mixture density network)”用于预测每一个音素在句子中的特征。苹果设计了一个成本函数来训练这个网络,着重考虑到两个方面的问题:如何让音素与发音相匹配以及如何让它与句子相融合。
 
在通过“Viterbi”算法从数据库里找到需要的数据后,系统会选出最佳的音素组合,把它们拼接起来,然后播放出声音。
 
另一种方式是生成声波,而不是拼接预录的声音。2016年9月,Alphabets Deepmind发布了WaveNet引擎,可以基于电脑生成文本语音。它的不足是速度很慢,就算使用最快的台式电脑也需要很长时间才能完成合成任务。所以,Siri不会在短时间使用合成语音代替录制语音。
未发布 Edraw Office Viewer component教程(三):将MS Word、Excel、PowerPoint嵌入到WPF应用程序中
by Harriet666 keys 分享 1494580929229
如何将Word、Excel、PowerPoint嵌入WPF应用程序?大部分人应该都记得可以将Excel图表嵌入到Word文档中的OLE技术,但该技术并不支持所有的Microsoft Office文档。它不支持表单中的多个MS Word实例。而Edraw office viewer component对于开发人员可以说是最简单的可以将Word文档、Excel工作表、PowerPoint演示文稿嵌入到WPF应用程序中的解决方案。
 
本文将演示如何逐步嵌入MS Word到wpf应用程序中。如果你没有officeviewer.ocx文件,请先安装。在组件安装文件夹中,你还可以找到wpf示例项目。
打开Visual Studio并创建一个新的WPF应用程序。
右键单击WpfApplication1解决方案。然后单击“Add”菜单并选择“User Control...”。

wpf项目中将会增加一个新的窗体。
选择“User Control”项。不是“User Control(WPF)”项。
双击解决方案面板中的UserControl1.CS。
打开“工具箱”面板,然后单击菜单中的“ Choose Items...”。
在弹出的“Choose Toolbox Items”对话框中,选择“Edraw Office Viewer Component”,然后单击“确定”。
现在,Edraw Office Viewer Component已添加到工具箱的“常规”选项卡中。在UserControl窗体中拖动它。
通过Visual Studio将AxEDofficeLib和EDOfficeLib添加到该解决方案中。
输入打开word文档的C#代码,并保护word文档的修改如下所示:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WpfApplication1
{
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
public void Open()
{
axEDOffice1.OpenFileDialog();
}
public void Protect()
{
if (axEDOffice1.GetCurrentProgID() == "Word.Application")
{
axEDOffice1.ProtectDoc(2);
}
}
public void Print()
{
axEDOffice1.PrintPreview();
}
public void Close()
{
axEDOffice1.ExitOfficeApp();
}
}
}

最后,你需要为UserControl编写主机窗口。切换到Windows1.xaml文件,然后添加打开、保护、打印和关闭的按钮,如图所示。

添加以下c#代码来关联office component。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApplication1
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
private void Open_Click(object sender, RoutedEventArgs e)
{
_host.Open();
}
private void Protect_Click(object sender, RoutedEventArgs e)
{
_host.Protect();
}
private void Print_Click(object sender, RoutedEventArgs e)
{
_host.Print();
}
private void Close_Click(object sender, RoutedEventArgs e)
{
_host.Close();
}
}
}

打开配置管理器。将Active Solution平台更改为x86选项。然后建立并运行。
Office Viewer component支持所有版本的MS Word。要将MS Excel或PowerPoint Visio、Project嵌入到WPF应用程序中,你只需要调用Open方法,如下所示:
public void Open()
{
//axEDOffice1.OpenFileDialog();
axEDOffice1.Open(sPath, "Word.Application");
axEDOffice1.Open(sPath, "Excel.Application");
axEDOffice1.Open(sPath, "PowerPoint.Application");
axEDOffice1.Open(sPath, "Visio.Application");
axEDOffice1.Open(sPath, "MSProject.Application");
}
 
以上就是本次教程的全部内容,接下来会有更多相关教程,敬请关注!您也可以在评论者留下你的经验和建议。

未发布 MailBee.NET Objects发送电子邮件(SMTP)教程三:没有SMTP服务器的情况下发送消息
by Harriet666 keys 分享 1493716753597
 
发送消息的最简单的方法是使用Smtp类的QuickSend方法(此方法是静态的,不需要你创建Smtp类的实例)。
 
即使没有SMTP服务器,QuickSend方法也可以发送电子邮件。该方法通过向网络设置中注册的DNS服务器进行查询,确定哪些服务器接收电子邮件的To / CC / BCC字段中指定的域的邮件,然后将电子邮件直接发送到收件人的邮件服务器。
C#:
MailBee.SmtpMail.Smtp.QuickSend("jdoe@domain.com", "bill@domain.com", "Subject", "Message Body");           
VB.NET:
MailBee.SmtpMail.Smtp.QuickSend("jdoe@domain.com", "bill@domain.com", "Subject", "Message Body")
 
如果要手动指定DNX MX查找DNS服务器,可以编辑应用程序的app.config或web.config文件,并将MailBee.DnsMX.DnsServerCollection键放该位置。有关详细信息,请参阅DnsAutodetectOptions文档。
 
备用(和更高级)的方法是创建Smtp对象并手动指定DNS服务器的IP地址:
C#:
mailer.DnsServers.Add("127.0.0.1");                                                          
VB.NET:
mailer.DnsServers.Add("127.0.0.1")
 
要通过检查系统属性自动填充Dns服务器,请使用Autodetect方法(顺便说一下,QuickSend方法可以使用Autodetect来确定可用的DNS服务器列表):
C#:
mailer.DnsServers.Autodetect();                                                     
VB.NET:
mailer.DnsServers.Autodetect()
 
此外,你可以指定用于调整在系统中注册的DNS服务器的自动检测选项。有关详细信息,请参阅DnsAutodetectOptions文档。
 
注意:由于发送垃圾邮件的人经常使用直接发送操作,因此许多邮件服务不接受来自未知主机的邮件提交。建议仅从指定的MX、PTR和SPF记录的域执行直接发送操作。在这种情况下,接收邮件的主机将能够验证发件人的域名并接受邮件提交请求。
 

试用、下载、了解更多产品信息请点击"咨询在线客服"   
未发布 界面控件Essential Studio for ASP.NET Web Forms 发布2017 v4丨附下载
by Harriet666 keys 分享 1514452996209
Essential Studio for ASP.NET Web Forms界面控件包含了商业Web应用程序开发中所需的所有控件,如grids、charts、gauges、menus、calendars、editors等等。同时,Essential Studio for ASP.NET中高性能的界面控件库还允许您的应用程序浏览和创建Excel、Word和PDF格式的文件。
 
 
2017 v4更新内容

组合框

新的控件
组合框组件允许用户输入一个值或从预定义选项列表中选择一个选项。单击此组件的箭头图标时,下拉列表将显示用户可以从中选择的值列表。
主要特征
  • 数据绑定:允许绑定和访问本地或服务器端数据源的项目列表。
  • 分组:支持将单个或特定类别下的逻辑相关项目进行分组。
  • 排序:支持按字母顺序(升序或降序)排序列表项。
  • 过滤:允许根据组件中输入的字符过滤列表项目。
  • 模板:允许自定义列表项目、选定的值、页眉、页脚、类别组页眉。
  • 可访问性:内置的可访问性支持有助于通过键盘、屏幕阅读器或其他辅助技术设备访问所有组件的功能。
50f0dfe329314659b35585bef763125aojpg
 

拼写检查器

新的控件
新的拼写检查器控件通过将它们与存储的字典单词列表进行比较,查找并突出显示拼写错误的单词。
主要特征
  • 突出显示拼写错误的单词。
  • 忽略字母数字,混合大小写、大写字母以及URL链接。
  • 使用用户定制的字典忽略特定的单词集合。
  • 根据用户指定的计数显示所有可能的建议。
  • 在手机、平板电脑和桌面上呈现最佳用户界面。
  • 评估一个或多个HTML元素,例如div、span、textarea和input元素。
1a5202190c7d43cab2f94101443f3330ojpg
 

AUTOCOMPLETE

搜索索引多栏弹出
现在可以区分多列AUTOCOMPLETE控件中的显示格式和搜索字段,允许用户在列表中搜索任意数量的字段,而无需修改所选的文本格式。
4f2b5b85be604f27812212e8c4acbce9ojpg
 

CHART

轴标签
支持显示多行轴标签。
8dc88589a08b4e80ac4a8da1c4cbfc5aojpg
显示外部数据标签
现在可以在图表区域内显示部分可见的数据标签。
0d7f4c196d3643899c3936457a72514eojpg
 

数据管理器

防伪
防伪令牌可用于帮助保护应用程序免受跨站请求伪造。它生成一个隐藏的表单字段(防伪造标记),在提交表单时进行验证。
 
额外的数据操作
提供了IN和NotIN过滤器操作用于在WHERE过滤器中指定多个值。
 

DIAGRAM

对齐
支持定制用户手柄的位置。
f055fce651354ce4a57596a6b0e73be9ojpg

端口增强
现在可以拖动端口来重新定位端口。
ee574146efe141cb87085be9eeb805a8ojpg

对称布局
对称布局是用于以圆形和对称方式排列图的自动布局。
b1d38a264ed84e3c8989600ca9d2282aojpg

标签交互
已经为标签提供了交互支持。他们可以被选中、拖动、调整大小和旋转。
1a070f6acae243a0b44cbe3e52e63b26ojpg
 

DOCIO

增强Word转换成PDF功能
DocIO现在允许将带有行号的Word文档以其原始格式转换为PDF。
8276b7a2b76b4c33b1ea29b504529df1ojpg
 

下拉列表

服务器过滤
在搜索框中输入文本时,此功能将过滤数据源。过滤是基于包含来自整个数据源的匹配项。

服务器过滤:远程数据
7290a4ed85f5414092b5ffc6b5592be0ojpg
服务器过滤:本地数据
063418725cd943e095e9a214b0a298b5ojpg
 

文件管理器

支持鼠标选择
支持在文件资源管理器控件中使用鼠标管理文件/文件夹。
7474361de99a49eeaa1816bba15045c4ojpg
 

甘特图

资源分配视图
甘特图控件支持资源分配视图。使用该视图,用户可以解释在同一日期发生的任务以及项目中资源的过度分配。
e03eddc73e384808b5ef566661126f27ojpg

排序
现在可以根据行顺序显示具有序列号的任务。
c492f9a9ddc444a897c938b52fb98ce6ojpg

多行选择
现在可以选择多行并执行缩进和负缩进操作。
e55c93b9f1e14c648dd77f38739e3fbfojpg

列过滤
现在可以过滤甘特图控件中的特定字段或列。
 
展开/折叠记录
甘特图控制现在支持扩展和折叠特定级别的记录。
 

表格

在Excel过滤器菜单中添加当前选项进行过滤
在搜索时显示添加当前选择到过滤器复选框,允许用户在表格中添加当前选中或清除的复选框列表数据以及已经过滤的数据。
7da249a2147a4d6e8e8e241538547bbaojpg

导出模板列
使用Excel、PDF和Word文件格式导出包含模板列的表格。
b856b7ddac504f908af14c834ca13c7eojpg
 
导出详细信息模板
导出使用Excel、PDF和Word文件格式的详细信息模板。
3a3fa2c17ed5461f90769d59663aa37dojpg
 

KANBAN

外部拖放
KANBAN控件现在支持与其他控件之间的拖放操作。
30ac11d56e2242cc9c8cd65fca7b2c22ojpg

没有数据源的KANBAN列
KANBAN列可以在不绑定数据源的情况下显示。
77fb04f854794636be3f1b908f2c2151ojpg
 

PIVOT客户端

支持Mondrian服务器(客户端模式)
分页将大记录拆分为不同的段,便于查看数据。它还改善了连接到Mondrian服务器的PIVOT控件的性能。
d6beed2fc8054c29ad4fe5754b567316ojpg


PIVOT网格

支持Mondrian服务器(客户端模式)
分页将大记录拆分为不同的段,便于查看数据。它还改善了连接到Mondrian服务器的PIVOT控件的性能。
 

RIBBON

设计器
改进了ASP.NET Web Forms中功能区组件的设计器。
283b5b2521c44c829d49c0cb41ec3f3aojpg
 

滑块

添加按钮
添加了一个可以隐藏的按钮,允许增加和减少滑块的值。
2535a882223f4ba794e19c116e0f858cojpg
 

ESSENTIAL XLSIO

图表转换为图像
图表元素(如图例,标题,绘图区和显示单元)的手动布局位置现在可以正确转换为图像。
552e85ea9f5d41cf8e74683354b6e348ojpg
未发布 GIS软件开发包Map Suite v10.0发布,支持Windows、Linux和macOS多平台
by Harriet666 keys 分享 1490601341066

Map Suite 10.0新功能

  • 核心功能支持Windows、Linux和macOS多平台。
  • 所有Map Suite产品系列都共享核心API。
  • 删除合并模块并将所需的程序集移动到特定程序包。
  • 创建可在多平台(包括Windows、Linux和macOS)上运行的新产品中心。
  • Map Suite产品托管在NuGet服务器上,而不是Map Suite安装程序。
  • 简化Map Suite许可策略。
  • 按功能拆分MapSuiteCore 9.0程序集。允许将必要的程序集导入到这些项目中。
  • 在Linux上支持ECW文件。
  • 在Linux上支持MrSid和JPEG2000文件。
  • 用于Map Suite产品的BareBone NuGet Package可以创建最小尺寸的应用程序。
  • 用于Map Suite产品的Standard NuGet Package可以让用户更轻松的将现有的9.0项目转移到10.0版本上。

Map Suite 试用版下载>>>

v10.0和v9.0之间的变化

我们努力使安装过程和版本维护变得更加容易,并将所有Map Suite产品重新打包到NuGet软件包中。开发人员可以选择在本地安装引用、通过使用Visual Studio的NuGet管理器进行管理或者为你的团队设置本地NuGet服务器。

更有效率

Map Suite产品可帮助开发人员更有效地创建GIS应用程序。将Map Suite组件运用到你的项目中并进行分享会让你的工作变得更加效率。

跨平台/便携式

在Map Suite 9.0之前,我们一直考虑支持像Linux、MacOS、Android、iOS这样的多平台。然而,基础结构阻止了我们的步伐。如果你已经是使用Map Suite产品的开发人员,你可能知道我们支持Windows(Wpf、WinForms ...)、iOS和Android平台,但在很长一段时间中这是比较困难的。想象这种情况:客户在Windows平台上报告MapSuiteCore中的错误。我们对它进行修复并测试。但这并不是全部的工作。我们还要向iOS和Android团队报告,要求他们解决相同的错误。这是基础结构方面的错误。我们有几个MapSuiteCore分支,它依赖于不同的框架。每次修复bug时,我们需要与其他平台同步。

现在,我们的目标是让Map Suite Core的源代码尽可能便携。借助分离MapSuiteCore的机会,我们可以将现有的功能转换为便携式。本质上来说各平台可以共享相同的源代码。

分离Map Suite Core

在Map Suite 9.0中,我们在名为“MapSuiteCore”和几个扩展的程序集中支持大部分功能。而其他产品则具有基础结构。当你启动项目时,你只能引用包含Map Suite所有功能的“MapSuiteCore”。这无法最小化你的项目。
我们决定按照功能来分离Map Suite Core,例如形状、层数、样式、符号等。你所知道的每个Map Suite功能都可能是一个单独的包。你可以选择性地使用项目所需的软件包,并将应用程序控制在最小。
Map Suite 试用版下载>>>

更简单的试用许可证

认证和许可是NuGet软件包的一个缺点。不过,我们为非注册开发人员制定了一个新策略,你不用注册就可以在有限的时间内评估Map Suite产品。你只需打开Visual Studio,创建一个项目,打开NuGet管理器并输入“MapSuite”。它会返回给你Map Suite支持的全部功能列表。
PS:原始许可证仍与10.0兼容。
第一次运行Map Suite 9.0或更低版本样本的工作流程。 

第一次运行Map Suite 10.0样本的工作流程。

更改命名空间

在Map Suite 9.0和以前版本中,命名空间主要由ThinkGeo.MapSuite.Core和版本命名空间两部分组成,如ThinkGeo.MapSuite.WebEdition。现在ThinkGeo.MapSuite.Core基于它的功能已经分离了,现在我们有:
  • ThinkGeo.MapSuite包含用于构建Map Suite应用程序的常用和基础类,如GeographyUnit、GeoCollection等。
  • ThinkGeo.MapSuite.Drawing包含绘图相关类,如GeoImage、GeoSolidBrush等。
  • ThinkGeo.MapSuite.Layers包含一些基础类,如Layer、FeatureLayer等。
  • ThinkGeo.MapSuite.Shapes包含几何相关类,如PlygonShape、LineShape等。
  • ThinkGeo.MapSuite.Styles包含用于构建地图样式的类,如AreaStyle、LineStyle等。
                                                                                                                     【责任编辑慧都Elyn

 近期热门 - 点击最多
  1. python基于asyncio实现 Redis 的异步操作哈希数据写入 / 读取、发布订阅消息中间件
  2. Node.js 打印vite react+go项目目录树
  3. Angular入门:用Signals状态管理和Bootstrap基础样式实现的用户登录注册实例教程
  4. 用Gitea搭建免费Git服务器自定义Actions配置CI/CD自动化部署和测试流水线
  5. FastAPI+SQLModel+PostgreSQL+React+Vite全栈项目文件结构说明环境搭建与初始化指南
  6. React结合vite使用vue3,在纯typescript的react hooks中使用vue
  7. valtio基于Proxy代理比redux\zustand更简洁的react状态管理库
  8. React Native为http网络请求添加timeout超时异常处理: 用XMLHttpRequest替换fetch发送的区别
  9. React Native使用fetch发送http登陆验证请求失败:无法读取set-cookie并显示network request failed
  10. 克服Redux的缺点在React/Native中使用消息队列,pubsub-js更加简洁的组件间通信和状态传递方法

  全端社区 - 最新回复
  1. 在无管理员权限的情况下,使用安装Python补全 pip临时配置环境变量
  2. Python鉴权方法:Depends 依赖注入;装饰器;与基于Proxy模式的Session状态管理自动计算脏属性;将用户数据存储在Redis中
  3. python基于asyncio实现 Redis 的异步操作哈希数据写入 / 读取、发布订阅消息中间件
  4. Angular入门:用Signals状态管理和Bootstrap基础样式实现的用户登录注册实例教程
  5. 用Gitea搭建免费Git服务器自定义Actions配置CI/CD自动化部署和测试流水线
  6. FastAPI+SQLModel+PostgreSQL+React+Vite全栈项目文件结构说明环境搭建与初始化指南
  7. Node.js 打印vite react+go项目目录树
  8. valtio基于Proxy代理比redux\zustand更简洁的react状态管理库
  9. Windows与Mac通过git ssh和rsync实现文件共享互传
  10. Windows与Mac通过git ssh和scp实现文件共享互传

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

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

OnceOA