• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

javaapache pdfbox工具裁剪PDF文件

武飞扬头像
越码有钱
帮助3

java利用apache pdfbox工具裁剪PDF文件

一、导入apache pdfbox工具jar包

maven仓库导入工具包

<dependency>
      <groupId>org.apache.pdfbox</groupId>
      <artifactId>pdfbox</artifactId>
      <version>2.0.25</version>
    </dependency>
    <dependency>
      <groupId>org.apache.pdfbox</groupId>
      <artifactId>fontbox</artifactId>
      <version>2.0.25</version>
    </dependency>

二、裁剪pdf工具类

package com.mhx.info.service.util;

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.common.PDRectangle;
import org.junit.Test;

import java.io.File;

/**
 * @Description: pdf文件裁剪工具类
 * @BelongsProject: mhx
 * @BelongsPackage: com.mhx.info.service.util
 * @ClassName: PdfBoxChangUtilTest
 * @Author: MHX
 * @CreateTime: 2022/11/25
 */
public class PdfBoxChangUtilTest {

    /**
     * pdf格式改变
     *
     * @throws Exception 异常
     */
    @Test
    public void pdfToChange() throws Exception {
        String sourceFilePath = "D:/zhxcmfs";
        String sourceFileName = "证明.pdf";
        PDDocument outdoc = new PDDocument();
        PDDocument doc = PDDocument.load(new File(sourceFilePath   "/"   sourceFileName));
        //获取PDF第一页
        PDPage page = doc.getDocumentCatalog().getPages().get(0);
        PDRectangle artBox = page.getArtBox();
        //切割PDF的左部坐标,只需要X坐标
        artBox.setUpperRightX(312.0F);
        //切割PDF的上右部坐标,只需要X坐标
        artBox.setLowerLeftX(839.0F);
//        切割pdf的左下角坐标,只需Y坐标
        artBox.setLowerLeftY(50F);
        //        切割pdf的右上角坐标,只需Y坐标
        artBox.setUpperRightY(500F);
        page.setArtBox(artBox);
        outdoc.importPage(page);
        //希望切割后的PDF存储的位置
        String savePath = "D:\\zhxcmfs\\myFiles";
        String fileName = "裁剪后的证明.pdf";
//        该文件如果存在不创建,不存在则创建
        File destDir = new File(savePath   "/"   fileName);
        if (!destDir.exists()) {
            destDir.mkdir();
        }
        //保存输出切割后的PDF
        outdoc.save(savePath   "/"   fileName);
        outdoc.close();
        doc.close();
    }
}

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfeebai
系列文章
更多 icon
同类精品
更多 icon
继续加载