获取本地PDF页面高度 - iOS
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取本地PDF页面高度 - iOS相关的知识,希望对你有一定的参考价值。
我有一个pdf存储在本地的iPhone。我想得到那个有路径的pdf的高度。我试过了:
NSURL *pdfUrl = [NSURL fileURLWithPath:self.documentPath];
CGPDFDocumentRef document = CGPDFDocumentCreateWithURL(CFBridgingRetain(pdfUrl));
float width = CGPDFPageGetBoxRect(CGPDFDocumentGetPage(document, 0), kCGPDFMediaBox).size.width;
float height = CGPDFPageGetBoxRect(CGPDFDocumentGetPage(document, 0), kCGPDFMediaBox).size.height;
但该文档为空,我不知道其他任何方式。
答案
试试这个,我希望它可以帮助你:)
// fileName is the PDF path
NSData *pdfData = [NSData dataWithContentsOfFile: @"__PDF_PATH"];
// Convert NSData to CFDataRef
CFDataRef thePDFdata = (__bridge CFDataRef)pdfData;
// Create CGDataProviderRef object from data
CGDataProviderRef providerObj = CGDataProviderCreateWithCFData(thePDFdata);
// Create the PDF using provider object
CGPDFDocumentRef pdfDoc = CGPDFDocumentCreateWithProvider(providerObj);
// Get the first page of the PDF
CGPDFPageRef pdfPageRef = CGPDFDocumentGetPage(pdfDoc, 1);
// Get the rect object from page 1
CGRect pdfPageRect = CGPDFPageGetBoxRect(pdfPageRef, kCGPDFMediaBox);
float width = pdfPageRect.size.width;
float height = pdfPageRect.size.height;
NSLog(@"WIDTH: %f HEIGHT: %f", width, height);
以上是关于获取本地PDF页面高度 - iOS的主要内容,如果未能解决你的问题,请参考以下文章
iOS- 获取本地视频宽度高度分辨的问题(普通百度的答案有问题)
怎样在父页面里获取加载(iframe)另一个网页的高度(父页面获取iframe里面加载页面的高度)