原创|产品更新|编辑:李显亮|2020-04-24 11:40:24.460|阅读 407 次
概述:Aspose.Imaging for .NET更新至最新版v20.4,实现导出为HTML5画布格式,以CDR格式实施支持文本,支持压缩矢量格式,优化针对Webp格式的速度或内存,欢迎下载体验。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
Aspose.Imaging for .NET一种高级图像处理控件,允许开发人员创建,编辑,绘制或转换图像。图像导出和转换是API核心功能之一,它允许在不安装Photoshop应用程序或任何其他图像编辑器的情况下保存为AdobePhotoshop®本机格式。
事实证明,Aspose.Imaging是处理各种图像格式的强大API。除单页图像外,Aspose.Imaging还支持处理多页图像,包括GIF,TIFF,PSD,DICOM,CDR和WebP。
近期发布了Aspose.Imaging for .NET v20.4,实现导出为HTML5画布格式,以CDR格式实施支持文本,支持压缩矢量格式,优化针对Webp格式的速度或内存,还没使用过的朋友可以点击下载最新版Aspose.Imaging
key | 概述 | 类别 |
---|---|---|
IMAGINGNET-3788 | 在X3及以下版本上以CDR格式实施支持文本 | 功能 |
IMAGINGNET-3629 | 实现导出为HTML5画布格式 | 功能 |
IMAGINGNET-3413 | 允许针对Webp格式的速度或内存优化策略 | 功能 |
IMAGINGNET-3360 | 支持压缩矢量格式 | 功能 |
IMAGINGNET-3795 | Aspose.Imaging 20.2:将特定WMF转换为PNG会引发异常 | 增强功能 |
IMAGINGNET-3774 | 将EMF转换为PNG会在PNG周围添加边框 | 增强功能 |
IMAGINGNET-3770 | 无法访问已处置的对象;对象名称:“ DjvuImage” | 增强功能 |
IMAGINGNET-3679 | 从Aspose.Imaging移除PSD加载支持 | 增强功能 |
IMAGINGNET-3655 | 添加Aspose.Imaging .NET Core 3.1。组态 | 增强功能 |
//Implemented text support in CDR versions X3 and below. string baseFolder = @"D:"; string fileName = "Placards_b.cdr"; string inputFilePath = Path.Combine(baseFolder, fileName); string outputFileName = inputFilePath + "fixed.pdf"; using (Image image = Image.Load(inputFilePath)) { PdfOptions pdfOptions = new PdfOptions(); CdrRasterizationOptions rasterizationOptions = new CdrRasterizationOptions(); rasterizationOptions.PageWidth = image.Width; rasterizationOptions.PageHeight = image.Height; pdfOptions.VectorRasterizationOptions = rasterizationOptions; image.Save(outputFileName, pdfOptions); }
// ### What is HTML5 Canvas? // Canvas is an element in HTML5 which can be used for dynamic rendering of 2D graphics. It allows to draw pathes, boxes, texts, // images and many other things. For instance, Canvas can be // // used to draw graphs, combine photos, or create simple (or complex) diagrams. // The Canvas element is not supported in some older browsers, but is supported in recent versions of all major browsers. // Using the Canvas is not very difficult. You do not have to know HTML, JavaScript or CSS. Aspose.Imaging library will // generate all required code for you. // ### Create a simple Canvas image // Any vector image (SVG, WMF, CMX, etc.) can be used as a source for your Canvas images. The next code creates a simple Canvas image: using (var image = Image.Load(@"Sample.svg")) { image.Save(@"Canvas.html", new Html5CanvasOptions { VectorRasterizationOptions = new SvgRasterizationOptions() }); } // Now you can open Canvas.html in your browser to see Canvas image. // ### HTML page structure // The Canvas image is represented by HTML page. The typical page structure is the following: // ### Add Canvas image to existing HTML page // You can embed more than one Canvas image within HTML page or update already exsiting page. // In order to do that you need to export only the Canvas tag: using (var image = Image.Load(@"Sample.svg")) { image.Save(@"Canvas.html", new Html5CanvasOptions { VectorRasterizationOptions = new SvgRasterizationOptions(), FullHtmlPage = false }); } // In this case Canvas image will contain only the next content:// Now you can add this code to your existing HTML page. // ### HTML5 Canvas export options // You can modify Canvas image options during the export: // * ***CanvasTagId*** - Allows you to specify the exact Canvas tag identifier. If *CanvasTagId* is not specified, // the default identifier will be generated automatically. // * ***FullHtmlPage*** - This option determines whether the full HTML page should be generated including // the next HTML tags: *head*, *title* and *body*. The default value is *True*. // * ***Encoding*** - Specifies encoding to use during the export to the Canvas image format. // The default value is *UTF-8*.
// Added support for compressed vector formats Emz(compressed emf), Wmz(compressed wmf), Svgz(compressed svg). Supported read of these formats and export to other formats. 1.Export compressed formats to raster string[] files = new[] {"example.emz", "example.wmz", "example.svgz"}; string baseFolder = Path.Combine("D:","Compressed"); foreach (var file in files) { string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".png"; using (Image image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = (VectorRasterizationOptions)image.GetDefaultOptions(new object[] { Color.White, image.Width, image.Height }); image.Save(outFile, new PngOptions(){VectorRasterizationOptions = vectorRasterizationOptions}); } } 2.Export Emz to Emf string file = "example.emz"; string baseFolder = Path.Combine("D:", "Compressed"); string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".emf"; using (var image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = new EmfRasterizationOptions {PageSize = image.Size}; image.Save(outFile, new EmfOptions {VectorRasterizationOptions = vectorRasterizationOptions}); } 3.Export Wmz to Wmf string file = "example.wmz"; string baseFolder = Path.Combine("D:", "Compressed"); string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".wmf"; using (var image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = new WmfRasterizationOptions() { PageSize = image.Size}; image.Save(outFile, new WmfOptions() {VectorRasterizationOptions = vectorRasterizationOptions}); } 4.Export Svgz to Svg string file = "example.svgz"; string baseFolder = Path.Combine("D:", "Compressed"); string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".svg"; using (var image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = new SvgRasterizationOptions() { PageSize = image.Size}; image.Save(outFile, new SvgOptions() {VectorRasterizationOptions = vectorRasterizationOptions}); } 5.Export Emf to Emz string file = "input.emf"; string baseFolder = Path.Combine("D:", "Compressed"); string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".emz"; using (var image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = new EmfRasterizationOptions() { PageSize = image.Size}; image.Save(outFile, new EmfOptions() {VectorRasterizationOptions = vectorRasterizationOptions, Compress = true}); } 6.Export Wmf to Wmz string file = "castle.wmf"; string baseFolder = Path.Combine("D:", "Compressed"); string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".wmz"; using (var image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = new WmfRasterizationOptions() { PageSize = image.Size}; image.Save(outFile, new WmfOptions() {VectorRasterizationOptions = vectorRasterizationOptions, Compress = true}); } 7.Export Svg to Svgz string file = "juanmontoya_lingerie.svg"; string baseFolder = Path.Combine("D:", "Compressed"); string inputFile = Path.Combine(baseFolder, file); string outFile = inputFile + ".svgz"; using (var image = Image.Load(inputFile)) { VectorRasterizationOptions vectorRasterizationOptions = new SvgRasterizationOptions() { PageSize = image.Size}; image.Save(outFile, new SvgOptions() {VectorRasterizationOptions = vectorRasterizationOptions, Compress = true}); }
/This code throws exception as psd loading is not supported in Aspose.Imaging using (var image = Image.Load("japan2.psd") { } //This code exports bmp image to psd using (var image = Image.Load("tiger.bmp") { image.Save("result.psd", new PsdOptions()); }
// Example 1. Setting a memory limit of 50 megabytes for operations on the created WebP image var imageOptions = new WebPOptions(); imageOptions.Source = new FileCreateSource("created.webp", false); imageOptions.BufferSizeHint = 50; using (Image image = Image.Create(imageOptions, 1000, 1000)) { // Do something with the created image image.Save(); } // Example 2. Setting a memory limit of 20 megabytes for operations on the loaded WebP image var loadOptions = new LoadOptions(); loadOptions.BufferSizeHint = 20; using (Image image = Image.Load("Lossless.webp", loadOptions)) { // Do something with the loaded image } // Example 3. Settings a memory limit of 30 mebagytes for export-to-webp operation var loadOptions = new LoadOptions(); loadOptions.BufferSizeHint = 30; using (Image image = Image.Load("image.png", loadOptions)) { image.Save("exported.webp", new WebPOptions()); }
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn