1

我想编写一个应用程序来验证 PDF 文件。所需的验证是验证 PDF 中的所有文本和图像应在左侧 0.5" 边距和右侧 0.5" 边距之后开始。如果任何文本超出此范围,则应用程序应该能够捕捉到这一点。

我试图在 iText 中搜索它,但找不到任何可以解决我的目的的有用信息。

有人可以帮我在.net csharp中编写这段代码吗?

谢谢, 普拉文

4

3 回答 3

1

除了 R Ubben 的回答:reader.getPageSize(pageNumber)reader.getBoxSize(pageNumber,"media").

这就是它在 iTextSharp 中的实现方式。您可以在源代码中看到它。

提炼:

public Rectangle GetPageSize(PdfDictionary page) {
    PdfArray mediaBox = page.GetAsArray(PdfName.MEDIABOX);
    return GetNormalizedRectangle(mediaBox);
}
于 2012-01-05T15:03:13.280 回答
0

PDF 标准实际上并没有边距的概念,因为 PDF 应该是独立于设备的。它可以有五个用于限制输出的框:媒体框、裁剪框、出血框、艺术框和裁切框。通常其他四个框的大小与媒体框相同或更小。

如果您的 pdf 中存在媒体框,您可以检索它并检查它是否比页面每边小 0.5"。尝试比较 reader.getPageSize(pageNumber) 和 reader.getBoxSize(pageNumber,"media ”)。很可能它们是相同的。

您可以做的是重写 pdf 以确保有 1/2 英寸的边距。最简单的方法是缩小页面。

于 2009-07-14T15:26:45.233 回答
0

利用SetMarginMirroring(true)

于 2009-07-14T11:42:58.533 回答