学习idrsolutions的Jdeli科学实践(三)图片简单操作

idrsolutions
placeholder image
admin 发布于:2025-10-17 14:58:59
阅读:loading

IDR Solutions 自 1999 年以来一直开发创新的 Java、PDF 和 HTML5 解决方案,是一家专注于 PDF 和图像处理技术的软件公司,致力于为企业和开发者提供高性能、可靠的 PDF 查看、编辑、转换和渲染解决方案,提供了以下几款100% Java SDK产品组件,用于显示、转换和处理 PDF 文档,分别是:JDeli、JPedal、BuildVu、FormVu

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

1.基本介绍

(1)JDeli 将图像转换为 PDF 并支持 Java 读取/写入图像格式,包括 AVIF、HEIC、PNG、TIFF 和 WEBP,在Java中读取/写入图像。

(2)JPedal 使 Java 开发人员能够查看、打印、光栅化、拆分、操作和转换 PDF 文件,面向开发人员的 PDF 支持。

(3)BuildVu 将 PDF 文件转换为 HTML 或 SVG 以作为 HTML 进行处理并在 Web 应用程序中本地集成/显示,转换PDF文件。

(4)FormVu 将可填写的 PDF 表单转换为交互式和独立的 HTML5,以允许用户在浏览器中填写表单,使用可填写的 PDF 表单。

JDeli是100% Java SDK组件,本篇教程用于实践将JPG格式图片转换为其它更多格式的图片文件,相关案例的实践也是覆盖到多个知识点的细节,参考部分特色功能如下:

  • 源图片格式为JPG,转换后的新图片格式有:GIF、PNG、BMP、WEBP、PDF、TIFF、HEIC、JPEG、EMF、PSD、WMF、DICOM;

  • 源图片格式为JPG,写入后的新图片格式有:GIF、PNG、BMP、WEBP、PDF、TIFF、HEIC、JPEG、EMF、PSD、WMF、DICOM

  • 已知涵盖了图片转换与图片写入两套API函数;

2.示例输出

利用JDeli提供的Java API实现将本地的图片文件(JPG)进行编程式的代码操作,比如包含了:图片旋转、图片放大、图片增加文本水印、图片格式转换等,以下是参考代码与示例输出:

@RunWith(JUnit4.class)
public class ImageManipulationTest {

    @Test
    public void test() throws Exception {
        final File resources = new File(new File(new File("").getAbsolutePath()).getParentFile(), "resources");
        File imageFile = new File(resources , "input/girl.jpeg");
        BufferedImage bufferedImage = JDeli.read(imageFile);
        ImageProcessingOperations operations = new ImageProcessingOperations();
        final BufferedImage image = operations.apply(bufferedImage);
        //旋转90°
        operations.rotate(90);
        //放大1.5倍
        operations.scale(1.5f);
        //文字水印
        operations.watermark("Hello 中文", Color.BLUE, new Font("宋体", Font.BOLD, 30) , Watermark.WatermarkPosition.Center);

        final BufferedImage newImage = operations.apply(image);

        JDeli.write(newImage , new GifEncoderOptions() , new File(resources , "output/jdeli/girl.gif"));
        JDeli.write(newImage , new PngEncoderOptions() , new File(resources , "output/jdeli/girl.png"));
    }

}

(Java代码示例)

image.png

(示例原图与效果图)

3.示例说明

(1)上述示例演示了将jpg格式图片进行旋转、放大、文本水印的基础操作的实现;

(2)上述示例输出了png与gif两种图片格式,png背景透明且图片文件大小比较大,gif存在黑色背景

(3)上述示例未输出其它更多的图片格式,水印部分特增加了中文文本进行验证;

4.其它说明

(1)IDR Solutions公司出的几种产品(JDeli、JPedal、BuildVu、FormVu,提供产品试用14天的使用时长限制,否则会提示“IDR Solutions software has now expired”,直接结束Java进程,不知道能否通过修改电脑时间来实现继续试用;

(2)关于Jar文件的下载忘了是怎么来的了(从官网提供的下载渠道呢,还是从互联网上的下载渠道呢,还是别人发给我的呢),电脑重装后不知道了;

(3)本系列文章中的实现属于的科学使用,理论上没有各种限制,不需要改动jar文件的任何地方。特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)

(5)科学实践版相关文件为jdeli-trial.jar与jdeli-imageio-trial.jar,示例中发现在处理图片的执行过程中性能比较好,程序执行特别快;

(6)相关示例输出文件下载:《示例输出.zip》,所有的示例输出包含了gif、jpg、png等格式文件;


 点赞


 发表评论

当前回复:作者

 评论列表


留言区