当前位置: 首页 > backend >正文

将 PDF 转换为 TIFF 图片:简单有效的 Java 教程

在日常开发中,我们常需要将 PDF 转换为高质量的 TIFF 图片,用于归档、印刷或 OCR 识别。本文将通过 Java 提供一个简单高效的解决方案,帮助你轻松完成 PDF 到 TIFF 的转换,并支持批量与多页处理。

本文将使用 Spire.PDF for Java 来做演示,该工具是专业的 Java PDF 库,能够轻松完成读取、编辑、转换 PDF 等多项功能。同时,Spire.PDF 还为小型项目和测试推出了免费版。

你可以通过在 Maven 中添加下列代码,进行自动导入:

<repositories><repository><id>com.e-iceblue</id><name>e-iceblue</name><url>https://repo.e-iceblue.cn/repository/maven-public/</url></repository>
</repositories>
<dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.pdf</artifactId><version>11.8.3</version></dependency>
</dependencies>

也可以下载 Spire.PDF 进行手动安装。

通过Java 将 PDF 转换为 TIFF 

在完成应用安装后,我们直接进入正题:如何将 PDF 转换为 TIFF 图片。最常见的需求是将整个 PDF 文件一次性转换为 TIFF。借助 Spire.PDF 的 PdfDocument.saveToTiff() 方法,这个过程可以轻松实现。接下来,我们通过一个真实的代码示例来演示操作,并对关键步骤进行详细解析。

代码示例:将整个 PDF 文件转换为 TIFF

import com.spire.pdf.PdfDocument;public class PdfToTiff {public static void main(String[] args) {// 创建一个 PdfDocument 类的对象PdfDocument pdf = new PdfDocument();// 加载 PDF 文件pdf.loadFromFile("/AI绘画的利与弊-图片版.pdf");// 将整个 PDF 转换为 TIFFpdf.saveToTiff("/output/PDFToTiff.tiff");pdf.close();pdf.dispose();}
}

代码关键步骤解析:

  • 创建一个 PdfDocument 对象。

  • 通过 PdfDocument.loadFromFile() 方法加载一个 PDF 文件。

  • 使用  PdfDocument.saveToTiff() 方法将 PDF 保存为 TIFF。

注意:如果你还想拓展一下,将 PDF 转换为其它格式,比如 PDF 转为 OFD 等,那么你需要用的就是 PdfDocument.saveToFile() 方法。

Java 将 PDF 页面转换为 TIFF

虽然将整个 PDF 文件直接转换为 TIFF 是最快的方法,但有时我们并不需要 PDF 中的每一页,例如只想保留正文而忽略封面。与其在转换后再进行二次编辑,不如直接只转换需要的页面。幸运的是,Spire.PDF 同样支持这种操作。

代码示例:将 PDF 的第 2 页到第 3 页转换为 TIFF

import com.spire.pdf.PdfDocument;public class PdfToTiff {public static void main(String[] args) {// 创建一个 PdfDocument 类的对象PdfDocument pdf = new PdfDocument();// 加载 PDF 文件pdf.loadFromFile("/AI绘画的利与弊-图片版.pdf");// 将第二页到第三页 PDF 转换为 TIFF,并进行自定义设置pdf.saveToTiff("/PDFPagetoTiff.tiff", 1, 2, 300, 300);pdf.close();pdf.dispose();}
}

代码关键步骤解析:

  • 创建一个 PdfDocument 对象。

  • 通过 PdfDocument.loadFromFile() 方法加载一个 PDF 文件。

  • 使用 PdfDocument.saveToTiff() 方法并调整其中的参数将指定 PDF 页面保存为 TIFF。

PdfDocument.saveToTiff() 方法中的五个参数分别是:

  1. 输出文件路径("/output/PDFPagetoTiff.tiff"):指定生成的 TIFF 文件保存的位置和文件名。

  2. 开始页码(1):表示从 PDF 的第 2 页开始转换(注意 Spire.PDF 页码从 0 开始还是 1 开始,需要确认文档)。

  3. 结束页码(2):表示转换到 PDF 的第 3 页结束。

  4. 水平分辨率 DPI(300):指定生成的 TIFF 图像水平分辨率,单位为 DPI(dots per inch),数值越高图像越清晰,但文件越大。

  5. 垂直分辨率 DPI(300):指定垂直方向的分辨率,与水平 DPI 配合控制最终图像清晰度。

结论

通过上面的示例,我们学习了如何在 Java 中将 PDF 转换为 TIFF,无论是整份文档还是指定页面,都可以轻松实现。如果你在实践过程中遇到其他 PDF 处理需求,也可以继续探索 Spire.PDF 提供的功能。希望这篇教程能为你的开发工作带来一些帮助,欢迎在评论区分享你的问题或经验。



 

http://www.xdnf.cn/news/19969.html

相关文章:

  • 23种设计模式——抽象工厂模式(Abstract Factory Pattern)详解
  • 实战复盘:pnpm Monorepo 中的 Nuxt 依赖地狱——Unhead 升级引发的连锁血案
  • Node.js 18+安装及Claude国内镜像使用、idea中claude插件下载指南
  • MMD动画(二)动作制作
  • Spring线程池ThreadPoolTaskExecutor‌详解
  • 大语言模型的“思考”逻辑:从Token生成到上下文理解的内部流程
  • 我的创作纪念日——《惊变365天》
  • 裸签、Attach、Detach及其验签方式
  • Docker学习笔记(二):镜像与容器管理
  • 基于STM32的智能家居环境监控系统设计
  • 如何看懂GPU架构?万云智算一分钟带你了解GPU参数指标
  • Matter安全实现
  • Deathnote: 1靶场渗透
  • RTC实时时钟RX8025SA国产替代FRTC8025S
  • 2025打磨机器人品牌及自动化打磨抛光设备技术新版分析
  • 为何三折叠手机只有华为可以?看华为Mate XTs非凡大师就知道
  • 【CouponHub项目开发】EasyExcel解析Excel并使用线程池异步执行和延时队列兜底
  • Java GcExcel V8.2 新版本:效率升级与功能突破
  • 5.7 点云公开数据集——3D形状分类/部件分割
  • 企业发完年终奖后,是员工跳槽的高峰期?
  • 《嵌入式硬件(二):中断》
  • 数据可视化大屏精选开源项目
  • 【SuperSocket 】SuperSocket 中自定义 Session
  • [光学原理与应用-402]:设计 - 深紫外皮秒脉冲激光器 - 元件 - AOM零级光与一级光:深紫外皮秒激光器中的核心光学特性与系统应用
  • 决策树算法详解:从原理到实战
  • RabbitMq如何实现幂等性
  • 力扣字符串刷题-六道题记录-1
  • ECMAScript (5)ES6前端开发核心:国际化与格式化、内存管理与性能
  • Lucene 8.7.0 版本的索引文件格式
  • uniapp vue页面传参到webview.nvue页面的html或者另一vue中