Java:获取pdf中某一页的宽度和高度

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

一、背景介绍

二、用Java中的方法

三、用Python中的方法

总结


提示:以下是本篇文章正文内容,下面案例可供参考

一、背景介绍

金融业务,经常会涉及到合同盖章,那么盖章的时候就需要知道位置信息。比如第几页,X坐标,Y坐标。那么如果给出的坐标超出了范围,就会导致章盖不成功,那么我们怎么才能知道这个pdf文件中某一页的XY坐标呢?

二、用Java中的方法

Maven依赖: 


    org.apache.pdfbox
    pdfbox
    2.0.8

示例代码:

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;


public void 输出pdf页面横纵坐标范围() {
        String pdfPath = "C:\\Users\\86185\\Desktop\\951bb404d7ae4bc0b0152255a6d79c59.pdf";
        try (PDDocument document = PDDocument.load(new File(pdfPath))) {
            PDPage page = document.getPage(1);
            float width = page.getMediaBox().getWidth();
            float height = page.getMediaBox().getHeight();
            System.out.println("页面宽度:" + width);
            System.out.println("页面高度:" + height);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

三、用Python中的方法

代码示例:

import PyPDF2

def get_page_dimensions(pdf_path, page_number):
    with open(pdf_path, 'rb') as file:
        reader = PyPDF2.PdfFileReader(file)
        if page_number < 1 or page_number > reader.numPages:
            return None
        page = reader.getPage(page_number - 1)
        width = page.mediaBox.getWidth()
        height = page.mediaBox.getHeight()
        return width, height

pdf_path = 'your_pdf_file.pdf'
page_number = 1

dimensions = get_page_dimensions(pdf_path, page_number)
if dimensions:
    print("页面宽度:", dimensions[0])
    print("页面高度:", dimensions[1])
else:
    print("无效的页码")


总结

各种工具类的使用,重在积累,不难,但是要找一翻。

你可能感兴趣的:(pdf)