使用 GroupDocs.Watermark 在 Java 中提取 PDF 页面尺寸

提取 PDF 中特定页面的尺寸是常见需求,当您需要进行布局验证、动态内容放置或自动化报告时,需要 如何提取 PDF 信息。在本教程中,您将学习如何使用 GroupDocs.Watermark for Java 提取 如何提取 PDF 页面宽度和高度,并提供实用技巧和故障排除建议。

快速答案

  • 主要方法是什么? 使用 WatermarkerPdfContent 读取页面尺寸。
  • 哪个库版本可用? GroupDocs.Watermark 24.11 或更高版本。
  • 我需要许可证吗? 免费试用可用于测试;生产环境需要商业许可证。
  • 我可以读取受密码保护的 PDF 吗? 可以——在初始化 Watermarker 时提供密码。
  • 它是线程安全的吗? 每个线程仅加载一次文档,并及时关闭以避免资源泄漏。

什么是 “如何提取 PDF” 页面尺寸?

当我们谈论 如何提取 PDF 页面尺寸时,我们指的是检索 PDF 文件中每页的宽度和高度(以点为单位)。这些数据让您能够以编程方式调整图形、放置水印或验证文档是否符合打印规格。

为什么使用 GroupDocs.Watermark for Java?

GroupDocs.Watermark 提供了高级 API,抽象了底层 PDF 解析,使您在不同 PDF 版本上都能获得可靠的结果。它还能无缝集成到 Maven,支持受密码保护的文件,并在处理大文档时提供出色的性能。

前置条件

  • Java 开发工具包 (JDK) 8 或更高。
  • Maven 用于依赖管理。
  • 基本的 Java 知识以及熟悉添加 Maven 依赖。

为 Java 设置 GroupDocs.Watermark

在您的 pom.xml 中加入仓库和依赖:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/watermark/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-watermark</artifactId>
      <version>24.11</version>
   </dependency>
</dependencies>

您也可以直接从 GroupDocs.Watermark for Java releases 下载最新的 JAR。

许可证获取步骤

  1. 免费试用 – 开始免费评估该库。
  2. 临时许可证 – 获取限时密钥以进行更长时间的测试。
  3. 购买 – 获取商业许可证用于生产环境。

基本初始化

import com.groupdocs.watermark.Watermarker;

public class InitializeWatermarker {
    public static void main(String[] args) {
        // Initialize the Watermarker with your PDF document path
        Watermarker watermarker = new Watermarker("YOUR_DOCUMENT_DIRECTORY/document.pdf");
        
        // Remember to close the Watermarker after usage
        watermarker.close();
    }
}

如何提取 PDF 页面尺寸

以下是逐步演示,展示如何 提取 PDF 页面尺寸,包括宽度和高度。

步骤 1:设置加载选项

import com.groupdocs.watermark.options.PdfLoadOptions;

// Initialize PdfLoadOptions
PdfLoadOptions loadOptions = new PdfLoadOptions();

步骤 2:使用加载选项初始化 Watermarker

import com.groupdocs.watermark.Watermarker;

// Replace with your actual document path
Watermarker watermarker = new Watermarker("YOUR_DOCUMENT_DIRECTORY/document.pdf", loadOptions);

步骤 3:访问 PDF 内容

import com.groupdocs.watermark.contents.PdfContent;

// Get PdfContent from Watermarker
PdfContent pdfContent = watermarker.getContent(PdfContent.class);

步骤 4:检索并打印页面尺寸

// Access dimensions for the first page
double width = pdfContent.getPages().get_Item(0).getWidth();
double height = pdfContent.getPages().get_Item(0).getHeight();

System.out.println("Width of the first page: " + width);
System.out.println("Height of the first page: " + height);

技巧提示: 宽度和高度以点为单位返回(1 pt = 1/72 英寸)。如有需要,可乘以 0.3528 将其转换为毫米。

步骤 5:关闭 Watermarker

watermarker.close();

PDF 页面尺寸提取的常见用例

  1. 动态布局调整 – 调整图像或表格大小以匹配精确的页面尺寸。
  2. 打印就绪验证 – 在发送至打印机前确保文档符合特定尺寸约束。
  3. 批量处理 – 循环 pdfContent.getPages(),收集大型 PDF 中每页的尺寸。

性能考虑

  • 缓存结果:如果需要多次获取许多页面的尺寸,请将其存入映射表以避免重复读取文件。
  • 内存管理:读取完尺寸后尽快关闭 Watermarker,尤其是处理大型 PDF 时。
  • 并行处理:对于多页文档,在提取尺寸列表后,可在独立线程中处理每页。

故障排除技巧

  • 路径错误 – 确认 "YOUR_DOCUMENT_DIRECTORY/document.pdf" 指向一个存在且可读的文件。
  • 不受支持的 PDF 版本 – 确保 PDF 符合 PDF 1.4 或更高版本;较旧版本可能需要转换。
  • 许可证错误 – 缺失或过期的许可证会抛出 LicenseException。开发时使用试用许可证。

常见问题

问:GroupDocs.Watermark 所需的最低 Java 版本是什么?
答:至少需要 JDK 8 或更高。

问:如何使用 GroupDocs.Watermark 高效处理大型 PDF 文件?
答:分批处理页面,仅缓存所需的元数据,并及时关闭 Watermarker 以释放资源。

问:GroupDocs.Watermark 能处理受密码保护的 PDF 吗?
答:可以——在创建 Watermarker 时于 PdfLoadOptions 中提供密码。

问:有没有办法自动提取所有页面的尺寸?
答:当然。遍历 pdfContent.getPages(),在循环中对每页调用 getWidth() / getHeight()

问:提取页面尺寸时常见的问题有哪些?
答:常见问题包括错误的文件路径、页面对象损坏的 PDF,或文件权限不足。

其他资源


最后更新: 2026-02-05
测试环境: GroupDocs.Watermark 24.11 for Java
作者: GroupDocs