不开源项目aspose.drawing的再次实践

Aspose
placeholder image
admin 发布于:2026-05-23 13:25:58
阅读:loading

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

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

1.基本介绍

上次实践的是Aspose.drawing的全部版本,从第一个版本23.12--24.11,后面陆续的也运行了一些更新的版本,一直到25.10版本,这款产品的API调用都是没有水印的,也是奇怪。近期又导入了最新的版本26.4,发现已经有水印了,陆续的运行了26.2、26.3的版本也确实是都有水印了。

既然有最新版本那就按照最新版本26.4来实践,结合以往的经验,也就是分分钟就科学了,相关参考如下

image.png

(本图下载的是26.4版本,当下最新版)

2.示例代码

public class Colors {

    /**
     * 画两条直线,分别是蓝色与红色
     */
    public static void main(String[] args) {
        Bitmap bitmap = new Bitmap(1000, 800);
        Graphics graphics = Graphics.fromImage(bitmap);

        Pen bluePen = new Pen(Color.getBlue(), 2);
        graphics.drawLine(bluePen, 100, 100, 900, 100);

        Pen redPen = new Pen(Color.fromArgb(255, 255, 0, 0), 2);
        graphics.drawLine(redPen, 100, 200, 900, 200);
        
        bitmap.save(createFileIfNotExist("Colors.png"));
    }
}

image

/**
 * 画三个圆
 */
public static void main(String[] args) {
    Bitmap bitmap = new Bitmap(1000, 800);
    Graphics graphics = Graphics.fromImage(bitmap);

    graphics.fillEllipse(new SolidBrush(Color.fromArgb(128, 255, 0, 0)), 300, 100, 400, 400);
    graphics.fillEllipse(new SolidBrush(Color.fromArgb(128, 0, 255, 0)), 200, 300, 400, 400);
    graphics.fillEllipse(new SolidBrush(Color.fromArgb(128, 0, 0, 255)), 400, 300, 400, 400);

    bitmap.save(createFileIfNotExist("AlphaBlending.png"));
}

image

image

3.其它说明

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

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

(3)本文所实践的关于aspose.drawing的26.4的版本水印参考如上面几个图所示,科学实现也是非常简单,参考无水印的几张《aspose.drawing.zip》;

(4)我想除了使用aspose.drawing来基本的画图和图片标注以外,似乎还可以用于画流程图、词云,等等;


 点赞


 发表评论

当前回复:作者

 评论列表


留言区