Cocoa PDF获取页面旋转值问题



这是我第一次在这个论坛上提问。对不起,如果我的英语不正确,这不是我的母语。通常我总是在这个论坛或谷歌上找到我的答案。但这一次,我没有找到。

这是我的问题(Mac OS X Lion):

我的PDF文件很少。为了测试,我用"预览"旋转一些页面,和/或用PDFKit([PDFPage-setRegion:90])以编程方式旋转PDF的一些页面。我保存了这个新的PDF。输出是带有一些旋转页面的PDF。我在预览或其他方式中重新打开,以确保一切正常。这很好,显示正确。到目前为止还不错。

现在,我打开这个新创建的PDF,并试图获得PDF页面的旋转值(逐页)。我尝试了PDFKIT方法[PDFPage旋转]或CGPDF的Quartz方法。。。(CGPDFPageGetRotationAngle),对于页面的旋转,我总是得到一个值0。NSLog(@"值:%d",角度)

如何使用PDFKIT方法进行复制,只需使用苹果公司的"PDF注释编辑器"代码即可。在"横向"one_answers"纵向"中打开具有某些页面的PDF。显示将如预期。但现在正在尝试读取"rotation=[page rotation];"行的值旋转在transformContextForPage:(PDFPage*)page方法中,我总是得到0。预期值应为0或90的时间,具体取决于页面。尝试将Quartz方法与CGPDFPageGetRotationAngle一起使用时也存在同样的问题。

我是不是错过了什么?是虫子吗?或者我对PDF页面旋转的理解是错误的?

感谢

在PDF中,您可以通过两种方式创建旋转页面:将页面大小设置为8.5*11in并将"旋转页面"属性设置为90,或者简单地将页面大小设定为11*8.5in。视觉上没有区别
Preview的问题(我认为它后面还有PDFKit)是,当您将旋转设置为90时,它并不是简单地将"旋转"属性设置为90,而是切换页面宽度和高度,并对页面内容流应用转换,以便页面内容看起来是旋转的。由于[PDFPage旋转]和CGPDFPageGetRotationAngle返回"旋转"属性的值,因此在使用Preview和PDFKit旋转的页面上,它们将始终返回0。

最新更新