【发布时间】:2018-11-12 09:16:55
【问题描述】:
我想知道PDF页面的分辨率。我尝试了一种解决方案,但得到了错误的分辨率 (612 x 792)。但正确的分辨率是 816x1056。
guard let provider = CGDataProvider(data: fileData as CFData) else { return }
guard let coreDocument = CGPDFDocument(provider) else { return }
guard let page = coreDocument.page(at: 0) else { return }
let size = page.getBoxRect(.mediaBox).size
【问题讨论】:
-
试试
let size = page.getBoxRect(.cropBox).size -
@LeoDabus 的尺寸有误。
-
PDF 没有分辨率。仅如果有一个单页填充位图图像(没有旋转或倾斜),您可能会得出一些分辨率值。顺便说一下,一个 612 x 792 的裁剪框通常意味着一个字母大小的页面。
-
@mkl 谢谢,但是当我在 adobe 阅读器中查看时,分辨率为 816x1056。但通过上面的代码,我得到了 612 x 792 的分辨率。
-
“当我在 adobe 阅读器中查看时,分辨率为 816x1056” - 您在 Adobe Reader 中的哪个位置获得该分辨率?该“分辨率”最有可能为您提供以 px 为单位的页面尺寸,而上面的代码为您提供以 pt 为单位的页面尺寸,并且前者的数字等于后者的 4/3 倍。
标签: ios swift pdf cgpdfdocument