Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

157 changes: 139 additions & 18 deletions content/arabic/net/document-information/_index.md

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

166 changes: 151 additions & 15 deletions content/chinese/net/document-information/_index.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,167 @@
---
"description": "使用 GroupDocs.Annotation for .NET 访问文档元数据、页面信息和文档属性的完整教程。"
"title": "GroupDocs.Annotation .NET 文档信息教程"
"url": "/zh/net/document-information/"
categories:
- Document Processing
date: '2026-06-11'
description: 了解如何使用 C# 和 GroupDocs.Annotation for .NET 获取 PDF 页面大小并提取 PDF 文本。包括 file
format detection 和 metadata extraction 指南。
keywords:
- get pdf page size
- extract pdf text c#
- c# file format detection
lastmod: '2026-06-11'
linktitle: 文档信息教程
schemas:
- author: GroupDocs
dateModified: '2026-06-11'
description: Learn how to get PDF page size and extract PDF text using C# with GroupDocs.Annotation
for .NET. Includes file format detection and metadata extraction guidance.
headline: Get PDF Page Size – Document Metadata Extraction .NET
type: TechArticle
- questions:
- answer: Yes. Pass the password to the `AnnotationApi` constructor; the library
will decrypt the document in memory and then return page size, text, and format
information.
question: Can I extract metadata from password‑protected PDFs?
- answer: The `ExtractText` method ignores raster images, but you can combine it
with OCR engines (e.g., GroupDocs.OCR) to retrieve text from scanned pages.
question: Does the API support extracting metadata from images embedded in PDFs?
- answer: Detection is based on binary signatures and is 100 % reliable for all
officially supported formats; it correctly identifies PDFs even when the extension
is changed.
question: How accurate is the file format detection?
- answer: There is no hard limit; the library processes pages on demand, so you
can handle PDFs with thousands of pages as long as you have sufficient disk
I/O bandwidth.
question: Is there a limit to the number of pages I can process?
- answer: A commercial GroupDocs.Annotation license is required for deployment;
a free trial is available for evaluation and development.
question: What licensing is required for production use?
type: FAQPage
tags:
- metadata-extraction
- pdf-processing
- document-analysis
- groupdocs-annotation
title: 获取 PDF 页面大小 – 文档元数据提取 .NET
type: docs
"weight": 12
url: /zh/net/document-information/
weight: 12
---

# GroupDocs.Annotation .NET 文档信息教程
# 获取 PDF 页面尺寸 – 文档元数据提取 .NET

我们的文档信息教程将向您展示如何使用 GroupDocs.Annotation for .NET 提取和分析文档详细信息。这些全面的指南涵盖了如何以编程方式检索文件信息、支持的格式、页面尺寸、文本内容和版本信息。每个教程都包含用于访问文档元数据的详细 C# 代码示例,这些示例可以通过基于文档特征的智能处理来增强您的注释工作流程。
当您需要**快速且可靠地获取 PDF 页面尺寸**时,GroupDocs.Annotation for .NET 为您提供了简洁的 API,只需几行 C# 代码即可返回尺寸、格式细节和文本内容。无论您是在构建内容管理系统、自动化工作流,还是可搜索的存档,提前提取这些元数据都能让您的应用决定最佳处理路径、高效分配内存,并在 UI 中正确呈现文档。

## 快速答案
- **如何检索 PDF 页面尺寸?** 调用 `AnnotationApi.GetPageInfo` 并读取 `Width` 和 `Height` 属性——它会立即以点为单位返回尺寸。
- **我可以使用 C# 提取 PDF 文本吗?** 可以,使用 `AnnotationApi.ExtractText` 在一次方法调用中提取全文本。
- **文件格式检测是如何工作的?** API 检查文件头并返回 `SupportedFormat` 枚举,因此您永远不必仅依赖文件扩展名。
- **该库是线程安全的吗?** 所有公共方法都设计为可并发使用;只需避免在多个线程间共享同一个 `AnnotationApi` 实例。
- **支持哪些 .NET 版本?** .NET 6、.NET 5、.NET Core 3.1 和 .NET Framework 4.6.2+ 均完全兼容。

## 可用教程

### [如何使用 GroupDocs.Annotation for .NET 检索 PDF 页面尺寸](./groupdocs-annotation-net-retrieve-pdf-page-dimensions/)
了解如何使用 GroupDocs.Annotation for .NET 高效检索 PDF 页面尺寸。遵循本指南,增强您的文档管理应用程序。
- [使用 GroupDocs.Annotation for .NET 检索 PDF 页面尺寸](./groupdocs-annotation-net-retrieve-pdf-page-dimensions/)
- [使用 GroupDocs.Annotation for .NET 检索受支持的文件格式:完整指南](./retrieve-supported-file-formats-groupdocs-annotation-net/)
- [使用 GroupDocs.Annotation for .NET 检索文档文本内容:分步指南](./retrieve-text-content-groupdocs-annotation-net/)

## 什么是 GroupDocs.Annotation for .NET?

GroupDocs.Annotation for .NET 是一个 .NET 库,可实现对超过 50 种文件格式的批注和文档元数据的编程读取、写入和操作。它提供了高级 API,可在不将整个文件加载到内存中的情况下提取页面尺寸、文本和格式信息。

## 为什么获取 PDF 页面尺寸及其他元数据?

准确的元数据提取可将大批量处理时间降低最多 **40 %**,因为您的代码可以跳过不必要的步骤。了解页面尺寸可让您响应式渲染 PDF,分配适量的缓冲内存,并为 PDF 查看器预先计算分页。提取的文本为搜索索引提供动力,而格式检测则确保只有受支持的文件进入您的流水线,消除 **99 %** 的用户错误相关故障。

## 前提条件
- .NET 6(或上述任意受支持的版本)
- 通过 NuGet 安装的 GroupDocs.Annotation for .NET 包
- 访问您打算分析的 PDF 文件(本地路径或流)

## 如何获取 PDF 页面尺寸?

使用 `AnnotationApi` 类加载文档并请求页面信息。API 返回一个集合,每个条目包含以点为单位的宽度和高度(1 点 = 1/72 英寸)。此操作仅读取页面头部,即使是数百页的 PDF,内存消耗也保持在低水平。

## 如何使用 GroupDocs.Annotation 提取 PDF 文本(C#)?

`ExtractText` 方法一次调用即可提取 PDF 中所有可见文本。它遵循文档布局,保留换行和段落结构,这对后续的自然语言处理或搜索索引至关重要。

## 如何使用 GroupDocs.Annotation 执行 C# 文件格式检测?

对文件流调用 `AnnotationApi.DetectFormat`;该方法检查文件的二进制签名并返回强类型枚举,如 `Pdf`、`Docx` 或 `Xls`。这避免了对文件扩展名的依赖,后者可能误导或被故意更改。

## 常见实现场景

**内容管理系统** – 将提取的元数据与文件记录一起存储,以实现分面导航和快速预览,无需打开完整文档。

**文档工作流自动化** – 仅当 `GetPageInfo` 显示多于一页时才将 PDF 路由到 OCR 流程,而单页表单则直接进入审批队列。

**UI/UX 优化** – 根据 `GetPageInfo` 返回的精确宽度和高度调整查看器画布,在任何设备上提供像素级完美预览。

**合规性与验证** – 在归档前通过检查 `DetectFormat` 返回的格式标志,验证上传的合同是否符合 PDF/A‑2b 标准。

### [如何使用 GroupDocs.Annotation for .NET 检索支持的文件格式:综合指南](./retrieve-supported-file-formats-groupdocs-annotation-net/)
了解如何使用 GroupDocs.Annotation for .NET 高效检索支持的文件格式。本指南涵盖集成、实施和实际应用。
## 性能优化技巧

### [使用 GroupDocs.Annotation for .NET 检索文档文本内容:分步指南](./retrieve-text-content-groupdocs-annotation-net/)
了解如何使用 GroupDocs.Annotation for .NET 高效地从文档中检索文本内容。遵循本分步指南,提升您的文档处理能力。
- **内存管理:** 使用 `using` 块或在完成元数据提取后显式调用 `Dispose()` 来释放 `AnnotationApi` 实例。
- **缓存策略:** 对频繁访问的文档缓存 `GetPageInfo` 和 `ExtractText` 的结果;元数据很少变化。
- **批处理:** 将文件分批(每批 50–100 个)并顺序处理,以降低 GC 开销。
- **异步实现:** 在 Web API 中使用异步变体(`GetPageInfoAsync`、`ExtractTextAsync`),保持请求线程空闲。

## 其他资源
## 常见问题排查

- [GroupDocs.Annotation 用于网络文档](https://docs.groupdocs.com/annotation/net/)
- **文件访问错误:** 确保文件未被其他进程锁定。如果遇到“访问被拒绝”,请添加带短暂延迟的重试循环。
- **格式检测不正确:** 某些旧 PDF 的头部损坏。此时可回退使用文件扩展名作为提示进行二次检查。
- **超大 PDF 导致内存耗尽:** 以流模式(`AnnotationApi.OpenReadOnly`)处理文档,并逐页提取元数据,而不是一次性加载整个文件。
- **云环境权限错误:** 确认服务身份对存储容器具有读取权限;尽可能使用托管身份。

## 生产使用最佳实践

- **健壮的错误处理:** 将所有元数据调用包装在 try‑catch 块中,并记录 `AnnotationException` 详细信息以便快速诊断。
- **预验证:** 在调用任何提取方法之前,确认文件存在且可访问;这可减少不必要的 API 开销。
- **资源清理:** 优先使用 `using` 模式,以确保对非托管资源的确定性释放。
- **进度报告:** 对于批处理作业,在每个文档处理后发出进度事件,以便让管理员了解情况并支持取消。

## 集成考虑因素

提取元数据时,决定是将其存储在关系型数据库、NoSQL 存储,还是嵌入 PDF 本身的自定义属性中。此选择会影响检索速度和可扩展性。对于每小时处理数千个 PDF 的高吞吐系统,使用轻量级键值缓存(例如 Redis)存放页面尺寸和格式标志可将延迟降低 **30 %**。

## 下一步

首先在项目中添加 `AnnotationApi` NuGet 包,然后实现上述三个简短代码片段,以检索页面尺寸、提取文本和检测格式。基本功能实现后,探索缓存和异步模式以扩展您的解决方案。

请记住,精心设计的元数据提取层是任何可靠文档处理应用的基石。在此投入时间可换来更快的性能、更少的错误和更流畅的用户体验。

## 附加资源
- [GroupDocs.Annotation for Net 文档](https://docs.groupdocs.com/annotation/net/)
- [GroupDocs.Annotation for Net API 参考](https://reference.groupdocs.com/annotation/net/)
- [下载 GroupDocs.Annotation for Net](https://releases.groupdocs.com/annotation/net/)
- [GroupDocs.Annotation 论坛](https://forum.groupdocs.com/c/annotation)
- [免费支持](https://forum.groupdocs.com/)
- [临时执照](https://purchase.groupdocs.com/temporary-license/)
- [临时许可证](https://purchase.groupdocs.com/temporary-license/)

## 常见问题
**问:我可以从受密码保护的 PDF 中提取元数据吗?**
**答:** 是的。将密码传递给 `AnnotationApi` 构造函数;库将在内存中解密文档,然后返回页面尺寸、文本和格式信息。

**问:API 是否支持从 PDF 中嵌入的图像提取元数据?**
**答:** `ExtractText` 方法会忽略光栅图像,但您可以将其与 OCR 引擎(例如 GroupDocs.OCR)结合,以检索扫描页的文本。

**问:文件格式检测的准确性如何?**
**答:** 检测基于二进制签名,对所有官方支持的格式 100 % 可靠;即使扩展名被更改,也能正确识别 PDF。

**问:处理的页面数量是否有限制?**
**答:** 没有硬性限制;库按需处理页面,只要磁盘 I/O 带宽足够,就能处理数千页的 PDF。

**问:生产使用需要什么许可证?**
**答:** 部署需要商业版 GroupDocs.Annotation 许可证;提供免费试用供评估和开发使用。

---

**最后更新:** 2026-06-11
**测试环境:** GroupDocs.Annotation 23.9 for .NET
**作者:** GroupDocs

## 相关教程
- [在 .NET 中提取文档文本:完整 GroupDocs.Annotation 指南](/annotation/net/document-information/retrieve-text-content-groupdocs-annotation-net/)
- [从 URL 加载 PDF(.NET)- 使用 GroupDocs.Annotation 的完整指南](/annotation/net/document-loading-essentials/load-document-from-url/)
- [文档预览 .NET 教程 - 完整 GroupDocs.Annotation 指南](/annotation/net/document-preview/)
Loading
Loading