介绍
Java下处理图形是一件很头疼的工作, 这方面Java虽然提供了JAI/ImageIO API组件让程序员可以完成大量的操作, 但是, 由于固有一些缺陷, 导致应用的稳定性/常用功能受到极大的影响。 另外一些C/C++制作的图形库存在各种各样的问题, 比如由之封装的JavaAPI JImageMagic, 稍微大点压力的群集可能每天造成数次的崩溃 。
SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。
SimpleImage中的ImageRender是图片处理的基类,它是一个抽象类,我们看到,该类中定义了一个抽象方法render(),同时持有一个对ImageRender类的引用。
ReadRedner可以理解成一个组件,不是一个装饰者,因为ReadRender是所有渲染操作的第一步。 其他的子类DrawTextRender(水印处理),ScaleRender(缩略处理),WriterRender(输出)都是装饰者。
使用示例
[java]
预览
复制
packagecn.wuzhuti;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importorg.apache.commons.io.IOUtils;
importcom.alibaba.simpleimage.ImageRender;
importcom.alibaba.simpleimage.SimpleImageException;
importcom.alibaba.simpleimage.re