- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了错误,但是我尝试在 Swift 中获取 PDF 页面的媒体框。:
if let pdf = CGPDFDocument(pdfURL) {
let numberOfPages = pdf.numberOfPages
for index in 0...numberOfPages {
let pdfPage = pdf.page(at: index)
print(CGPDFPageGetBoxRect(pdfPage!, kCGPDFMediaBox))
}
我也试过:
print(pdfPage.getBoxRect(kCGPDFMediaBox))
以及使用 PDFDisplayBox.mediaBox
、mediaBox
和几乎所有其他变体。它在 python 中工作正常。我也可以使用 PDFPage
(相对于 CGPDFPage
)获取信息,但我需要使用 CGPDFPage
来处理其他 PDFPage
做不到。)
第二部分是:据我所知,mediaBox 结果不考虑旋转。因此横向页面可能有一个旋转 90 度的纵向媒体框。是否有任何简单的方法来获取“实际”显示尺寸,还是我必须自己进行转换?
最佳答案
PDF 页面从 1
开始编号,而不是从零开始。和 getBoxRect()
在 Swift 3 中采用 enum CGPDFBox
参数。所以这应该有效:
for pageNo in 1...pdf.numberOfPages {
if let pdfPage = pdf.page(at: pageNo) {
let mediaBox = pdfPage.getBoxRect(.mediaBox)
print(mediaBox)
}
}
PDF 边界框不考虑页面旋转。以下可能适用于计算旋转框(未测试):
// Get rotation angle and convert from degrees to radians:
let angle = CGFloat(pdfPage.rotationAngle) * CGFloat.pi / 180
// Apply rotation transform to media box:
let rotatedBox = mediaBox.applying(CGAffineTransform(rotationAngle: angle))
关于swift - 如何从 CGPDFPage 获取 PDF 框大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44407140/
我正在尝试将 CGPDFPage(从 CGPDFDocument 中选择)渲染到 UIImage 中以显示在 View 上。 我在 MonoTouch 中有以下代码,它让我走到了那里。 Rectang
我目前正在开发一个应用程序,我想在 UICollectionView 之上实现一个 PDF 阅读器。 我在每个呈现相应 PDF 页面的单元格上使用自定义 UIView: weak var page:
我有一个多页的 pdf 文档存储在本地存储中。我想从该 pdf 文档中提取任何页面并将其转换为 NSData 以将其附加到“MFMailComposeViewController”。使用以下代码行,我
我遇到了错误,但是我尝试在 Swift 中获取 PDF 页面的媒体框。: if let pdf = CGPDFDocument(pdfURL) { let numberOfPages = pd
我已经使用 MonoTouch 3 周了,一切都很顺利,直到我不得不在我的应用程序中显示 PDF。 使用 Apple 的 Quartz 2D Programming Guide我设法显示了 PDF。
我是一名优秀的程序员,十分优秀!