提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2019-12-06 13:40:11.130|阅读 390 次
概述:在Aspose.Imaging for .NET v19.11中,支持调整SVG图像大小和监视文档转换进度的新功能。接下来我们用示例为大家演示调整SVG图像大小和监视文档转换进度的用法。
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
Aspose.Imaging for .NET一种高级图像处理控件,允许开发人员创建,编辑,绘制或转换图像。图像导出和转换是API核心功能之一,它允许在不安装Photoshop应用程序或任何其他图像编辑器的情况下保存为AdobePhotoshop®本机格式。
在Aspose.Imaging for .NET v19.11中,支持调整SVG图像大小和监视文档转换进度的新功能。接下来我们用示例为大家演示调整SVG图像大小和监视文档转换进度的用法。
>>欢迎下载Aspose.Imaging for .NET v19.11体验
*双旦狂欢,限时购买Aspose.Total,直接立减10000元,还有惊喜红包享不停!了解详情点击哦~~
SVG是可伸缩矢量图形文件格式,并利用基于XML的内容来描述图形。由于利用内容来描绘图形,因此可以将SVG文件格式缩放为各种大小,而不会影响质量。换句话说,SVG格式与分辨率无关。为此,Aspose中增加了一种新的方法调整大小。想象一个可以用来根据需要更改SVG文件大小的方法。以下示例演示了此功能的用法:
void ResizeSvg()
{
string inputFileName = "Logotype.svg";
using (Image image = Image.Load(inputFileName))
{
image.Resize(image.Width * 10,image.Height * 15);
image.Save("Logotype_10_15.png", new PngOptions()
{
VectorRasterizationOptions = new SvgRasterizationOptions()
});
}
}类似的基于Java的实现如下:
String inputFileName = "Logotype.svg";
try (Image image = Image.load(inputFileName))
{
image.resize(image.getWidth() * 10,image.getHeight() * 15);
image.save("Logotype_10_15.png", new PngOptions()
{{
setVectorRasterizationOptions(new SvgRasterizationOptions());
}});
}有时,使用大型图像文件,并且在将此类文件渲染为其他格式时,根据文件大小需要很长时间才能完成渲染过程。在这种情况下,确定转换进度非常方便,因为如果打算向最终用户显示有关转换过程的某些状态,则很有用。为此,已在Aspose.Imaging中添加了新属性ProgressCallback。以下示例演示了此功能的用法:
using (var image = Image.Load(fileName, new LoadOptions { ProgressEventHandler = ProgressCallback }))
{
image.Save(fileName+".psd",
new PsdOptions() { ProgressEventHandler = ExportProgressCallback });
}
internal void ProgressCallback(ProgressEventHandlerInfo info)
{
Console.WriteLine("{0} : {1}/{2}", info.EventType, info.Value, info.MaxValue);
}
internal void ExportProgressCallback(ProgressEventHandlerInfo info)
{
Console.WriteLine("Export event {0} : {1}/{2}", info.EventType, info.Value, info.MaxValue);
}
// Example of use of operation progress event handler
using (var image = Image.Load(fileName, new LoadOptions { ProgressEventHandler = ProgressCallback }))
{
image.Save();
}
internal void ProgressCallback(ProgressEventHandlerInfo info)
{
Console.WriteLine("{0} : {1}/{2}", info.EventType, info.Value, info.MaxValue);
}类似的基于Java的实现如下:
String fileName = "some file to load";
LoadOptions loadOptions = new LoadOptions();
loadOptions.setProgressEventHandler(new ProgressEventHandler()
{
@Override
public void invoke(ProgressEventHandlerInfo info)
{
System.out.format("Load event %s : %d/%d\n", EventType.toString(EventType.class, info.getEventType())
, info.getValue(), info.getMaxValue());
}
});
try (Image image = Image.load(fileName, loadOptions))
{
PsdOptions psdOptions = new PsdOptions();
psdOptions.setProgressEventHandler(new ProgressEventHandler()
{
@Override
public void invoke(ProgressEventHandlerInfo info)
{
System.out.format("Export event %s : %d/%d\n", EventType.toString(EventType.class, info.getEventType())
, info.getValue(), info.getMaxValue());
}
});
image.save(fileName + ".psd", psdOptions);
}本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn




本文主要介绍如何在MVVM应用程序中使用虚拟源,欢迎下载最新版组件体验!
Aspose.Slides for Java使用户能够轻松地操作幻灯片、添加注释和转换文件。其易用性和集成能力提高了工作效率,使开发人员能够专注于更关键的任务。
在嵌入式软件测试领域,对交叉编译代码进行单元测试是一大挑战。Parasoft C/C++test作为专业的C/C++测试工具,能够与劳特巴赫Trace32调试器深度集成。下面会详细介绍如何在C++test中配置Trace32调试器,实现对PowerPC架构程序的单元测试,涵盖环境设置、项目导入到测试执行的全过程。
本文将为大家介绍如何使用DevExpress WinForms数据网格控件实现摘要文本的格式化,欢迎下载最新版组件体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站