JAVA PdfBox库提取PDF文件某一页转为图片

该博客介绍了如何利用JAVA的PdfBox库来读取PDF文件,并将其某一页转换成PNG图像,提供了详细的代码示例。
摘要由CSDN通过智能技术生成
<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>2.0.22</version>
</dependency>

/*

  • 读取 pdf,将其中的某一页另存为 png 图片
    */
package pdf;

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.encryption.InvalidPasswordException;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;
import org.apache.pdfbox.tools.imageio.ImageIOUtil;

public class PDFSavePNG
{

  public static void main(String[] args)
  {
    try
    {
      // 打开来源 pdf
      PDDocument pdfDocument = PDDocument.load(new File("c:/temp/组合.pdf"));
      PDFRenderer pdfRenderer = new PDFRenderer(pdfDocument);

      // 提取的页码
      int pageNumber = 0;
      // 以300 dpi 读取存入 BufferedImage 对象
    
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用 JavaPDFBox 可以将一页 PDF 左右平均切割为两页。下面是一个简单的示例代码: ```java import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.common.PDRectangle; import org.apache.pdfbox.pdmodel.PDPage; import org.apache.pdfbox.pdmodel.PDPageTree; import java.io.IOException; public class PDFSplitter { public static void main(String[] args) { try { // 加载 PDF 文档 PDDocument document = PDDocument.load("input.pdf"); // 获取第一页 PDPage firstPage = document.getPage(0); // 获取第一页的宽度和高度 float pageWidth = firstPage.getMediaBox().getWidth(); float pageHeight = firstPage.getMediaBox().getHeight(); // 创建新的两页并设置宽度和高度 PDPage newPage1 = new PDPage(new PDRectangle(pageWidth / 2, pageHeight)); PDPage newPage2 = new PDPage(new PDRectangle(pageWidth / 2, pageHeight)); // 创建页面树对象 PDPageTree pageTree = document.getDocumentCatalog().getPages(); // 将新的两页添加到页面树中 pageTree.insertAfter(newPage1, firstPage); pageTree.insertAfter(newPage2, newPage1); // 保存切割后的 PDF document.save("output.pdf"); // 关闭文档 document.close(); System.out.println("PDF 切割完成。"); } catch (IOException e) { e.printStackTrace(); } } } ``` 上述代码将 PDF 文档加载后,获取第一页的宽度和高度,并根据宽度的一半创建两个新的 PDPage 对象。然后,将这两个新的页面插入到页面树中,保存为新的 PDF 文档。最后关闭文档。执行该代码后,会生成一个名为 "output.pdf" 的新 PDF 文件,其中第一页是原始第一页的左半部分,第二页是原始第一页的右半部分。 请注意,你需要提前导入 PDFBox 以及相关的依赖。这个示例仅供参考,你可能需要根据自己的需求进行修改和完善。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值