0

我可能忽略了这一点,但是如果您使用的是 FastPDFKit,如何获得 PDF 的大小?

我正在尝试从 pdf 创建 PNG,但是在不知道页面的实际尺寸的情况下很难做到正确。

编辑:我之前在文档中搜索过,但我发现的只是这种方法: - (void)getCropbox:(CGRect *)cropbox andRotation:(int *)rotation forPageNumber:(NSInteger)pageNumber withBuffer:(BOOL)withOrWithout

但我不知道如何使用它,它不返回任何东西。

4

1 回答 1

2

不确定您对 PDF 的熟悉程度,但每个页面都指定了许多“框”,这些“框”是各种感兴趣的矩形(裁剪、媒体等)

大多数使用 PDF 的应用程序都选择使用裁剪框,该裁剪框定义了应显示的页面区域。(请参阅 PDF 1.7 规范的第 10.10.1 节:http: //www.adobe.com/devnet/pdf/pdf_reference_archive.html

另外值得注意的是,页面可以指定 0、90、180 或 270 的旋转角度,您需要自己将其应用于裁剪框。(参见 PDF 1.7 规范的表 TABLE 3.27 中的 /Rotate)

所以使用上面的 API 你可以这样调用它:

[somePDFDoc getCropbox:&cropbox andRotation:&rotation forPageNumber:10 withBuffer:NO];

这会给你cropbox rect和它的旋转。

注意:我从未使用过 FastPDFKit

注意 2:如果cropbox 的值为 CGRectZero,您想使用其他矩形之一。大多数观众使用媒体框。

于 2012-09-03T07:18:03.017 回答