学习idrsolutions的JPedal科学实践(一)常规功能
idrsolutionsadmin 发布于:2025-10-20 10:32:15
阅读:loading
IDR Solutions 自 1999 年以来一直开发创新的 Java、PDF 和 HTML5 解决方案,是一家专注于 PDF 和图像处理技术的软件公司,致力于为企业和开发者提供高性能、可靠的 PDF 查看、编辑、转换和渲染解决方案,提供了以下几款100% Java SDK产品组件,用于显示、转换和处理 PDF 文档,分别是:JDeli、JPedal、BuildVu、FormVu。
特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)
(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 表单。
JPedal 是一个 Java PDF 库,它使 Java 开发人员可以轻松地在 Java 中处理 PDF 文档,可以作用于 Java 转换、打印、处理、签名和查看PDF文件。JPedal 是一个 100% Java PDF 库,没有第三方代码。本篇教程将从它所支持的众多功能里挑选PDF转换图片、文本内容搜索、页面内容插入等进行科学实践,相关案例的实践也是覆盖到多个知识点的细节,参考部分特色功能如下:
将PDF文档转换为图片格式(GIF/JPG),PDF内容有多页,每一页将会是一个单独的图片;
从PDF所有页面内容中提取关键字“Java”的文本结果;
在现有PDF文档中增加一个新的页面,新页面内容有文本、图片等其它参数设置;
利用JPedal提供的Java API实现将本地的PDF文件转换为图片文件(GIF/JPG)等,以下是参考代码与示例输出:
@RunWith(JUnit4.class)
public class ConvertPdf2ImageTest {
@Test
public void test() throws Exception {
ConvertPagesToImages.writeAllPagesAsImagesToDir(new File("resources/input/Java.pdf").getAbsolutePath(),
new File("resources/output/jpedal/convert/").getAbsolutePath(),
"gif", 1.33f);
ConvertPagesToImages.writeAllPagesAsImagesToDir(new File("resources/input/Java.pdf").getAbsolutePath(),
new File("resources/output/jpedal/convert/").getAbsolutePath(),
"jpg", 1.33f);
}
}(Java代码示例)

(图片格式预览)
利用JPedal提供的Java API实现将对本地的PDF文件进行关键字的内容搜索,内容页面插入等,以下是参考代码与示例输出:
@RunWith(JUnit4.class)
public class DevelopTest {
@Test
public void test() throws Exception {
final File file = new File("resources/input/Java.pdf");
//查找每一页的内容文本
{
final List<float[]> dataList = FindTextInRectangle.findTextOnAllPages(file.getPath()
, "Java");
Assert.assertFalse(dataList.isEmpty());
}
//插入一页新内容
{
final PdfManipulator pdf = new PdfManipulator();
pdf.loadDocument(file);
pdf.addPage(1, PaperSize.A4_LANDSCAPE);
pdf.addText(1, "Hello World", 110, 110, BaseFont.HelveticaBold, 32, 1, 0.3f, 0.2f);
pdf.addImage(1, ImageIO.read(new File("resources/input/girl.jpeg")), new float[] {0, 0, 100, 100});
pdf.rotatePage(1, 90);
pdf.apply();
pdf.writeDocument(new File("resources/output/jpedal/Java.pdf"));
}
}
}
(关键字搜索结果)

(新页面插入)
(1)上述示例演示了将PDF格式转换为图片的实现,图片包含了两种常见格式,每一页的PDF均对应到一个图片文件;
(2)上述示例演示了PDF文本内容搜索,每个搜索到的结果为一组坐标位置;
(3)上述示例演示了PDF文件内容的插入,在新的插入页面增加了富文本、图片等;
(1)IDR Solutions公司出的几种产品(JDeli、JPedal、BuildVu、FormVu),提供产品试用14天的使用时长限制,否则会提示“IDR Solutions software has now expired”,直接结束Java进程,不知道能否通过修改电脑时间来实现继续试用;
(2)关于Jar文件的下载忘了是怎么来的了(从官网提供的下载渠道呢,还是从互联网上的下载渠道呢,还是别人发给我的呢),电脑重装后不知道了;
(3)本系列文章中的实现属于的科学使用,理论上没有各种限制(没有运行过期,没有水印),不需要改动jar文件的任何地方。特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权);
(5)科学实践版相关文件为jpedal-trial.jar与jpedal-java8-trial.jar,示例中发现API在运行过程中性能比较好,程序执行特别快;
(6)相关示例输出文件下载:《
示例输出.zip》,所有的示例输出包含了PDF、gif、jpg、png、tiff等格式文件;
点赞
欢迎来到陈冬冬的学习天地 | 学习与经验整理分享平台