我需要将CGPDFPageRef
var转换为整数,我创建了一个if
语句,用于检查PDF页面是否小于或大于文件未显示的页面。
- (id) setUpPDF: (int) pageNumber {
//** = I need some integer that automatically detects PDF pages
if ((pageNumber < **) || (pageNumber > **)) return nil;
CFURLRef pdfURL = CFBundleCopyResourceURL(CFBundleGetMainBundle(),
CFSTR("test"),
CFSTR("pdf"), NULL);
myDocumentRef = CGPDFDocumentCreateWithURL(pdfURL);
myPageRef = CGPDFDocumentGetPage(myDocumentRef, pageNumber);
答案 0 :(得分:1)
您可以使用CGPDFDocumentGetNumberOfPages(myDocumentRef)
获取总页数。
CGPDFDocumentGetNumberOfPages()
返回size_t,这是一个无符号整数。您可以直接将其与整数类型进行比较。
因此,对于上面的代码段,我假设您需要类似的内容:
CFURLRef pdfURL = CFBundleCopyResourceURL(CFBundleGetMainBundle(), CFSTR("test"), CFSTR("pdf"), NULL);
myDocumentRef = CGPDFDocumentCreateWithURL(pdfURL);
// take note that pdf page numbering starts at 1
if ((pageNumber < 1) || (pageNumber > CGPDFDocumentGetNumberOfPages(myDocumentRef))) return nil;
我建议您将参数从(int)pageNumber
更改为(size_t)pageNumber
。