不开源项目aspose.diagram最新版23.10的一些科普

Aspose
placeholder image
admin 发布于:2024-09-27 14:35:14
阅读:loading

前面在摸索了Aspose的Cells、Words、Pdf等多款组件,分别是常见的Word/Excel/Pdf办公软件,闲下心来又继续了解了一下Aspose For Java语言的其他软件,经过一些持续的分析和摸索实践越来越多的将它们给科学化,即所有的软件(组件)均不修改任何jar包依赖,纯粹使用反射的形式来调用,也就是说在API的使用前进行一次特殊的代码注册,即可实现授权,全程不需要License之类的xml,或是文档无水印、或是文档页数限制、或是获取内容无限制,等等。

特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)

1.基本介绍

本次实践的是Aspose.diagram的23.10/24.4等多个版本,它是一个功能强大的用于处理 Visio 演示文稿的开发工具包,支持非常广泛的Microsoft Visio的各种格式,而又无需安装Microsoft Office,如果有需要使用Java来操作对应文件的需求可以了解一下它。本次示例提供了将VSD/VSDX等文件格式转换的简单示例,更多/更专业的API使用有疑问请自行转至官网查看或学习,示例参考如下几点:

(1)有转换为:PDF、HTML、GIF、XPS等格式;

(2)提供了使用反射调用特定的class代码逻辑,无需修改原始的jar;

(3)科学使用的目的是转换后的文档无水印,可以支持超过4页的文档内容;

(4)科学使用的版本有23.10、24.4;

2.示例代码

public class AsposeDiagramReflectTest extends BaseTest {

    @Test
    public void test() throws Exception {
        //注册 23.10版本
        RegisterDiagram.registerDiagram2310();
        //注册 24.9版本
        /*RegisterDiagram.registerDiagram249();*/

        try (InputStream inputStream = getClass().getResourceAsStream("/ExportToSWFWithoutViewer.vsd")) {
            assert inputStream != null;
            Diagram diagram = new Diagram(inputStream);
            diagram.save(super.getRootFile("aspose.diagram/hello.pdf") , new PdfSaveOptions());
            diagram.save(super.getRootFile("aspose.diagram/hello.html") , new HTMLSaveOptions());
            diagram.save(super.getRootFile("aspose.diagram/hello.gif") , SaveFileFormat.GIF);
            diagram.save(super.getRootFile("aspose.diagram/hello.xps") , SaveFileFormat.XPS);
            diagram.dispose();
        }
    }

}

3.运行示例

hello.gif

(将visio转换为gif)

image.png

(将pptm转换为pdf)

4.其它说明

(1)`aspose.xxx`不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;

(2)aspose旗下有许多的产品,都是商业付费版本,常见于各种文档格式文件的操作,都需要商业授权使用,也基本都是支持多种编程语言的,如有Java、C++、.NET等等,官网也有多种在线示例;

(3)示例与相关文件下载:《源码下载与示例.zip》,注:下载并不包含具体的科学实现部分,只是源文件与示例输出文件;



 点赞


 发表评论

当前回复:作者

 评论列表


留言区