要求是将 PDF 拆分为单独的页面,并将单独的文件保留为 .pdf 扩展名。
在/CreatedPDF 文件夹中创建的文件无法打开
请帮助解决/纠正此问题。
//"fileURL" is the original File which has to be broken
//"pages" is the number of pages in PDF
NSInteger pages = CGPDFDocumentGetNumberOfPages(pdfDocReference);
for (int page = 1; page <= pages; page++)
{
NSFileManager *fm = [NSFileManager defaultManager];
NSString *dirName = [documentsDirectory stringByAppendingPathComponent"/CreatedPDF"];
[fm createDirectoryAtPath:dirName withIntermediateDirectories:YES attributes:nil error:nil];
NSString *pdfPath = [dirName stringByAppendingPathComponent:[NSString stringWithFormat"page_%d.pdf",page]];
NSURL *pdfUrl = [NSURL fileURLWithPath:pdfPath];
CGContextRef context = CGPDFContextCreateWithURL((__bridge_retained CFURLRef)pdfUrl, NULL, NULL);
CGPDFDocumentRef pdfDoc = CGPDFDocumentCreateWithURL((__bridge_retained CFURLRef)fileURL);
CGPDFPageRef pdfPage = CGPDFDocumentGetPage(pdfDoc, 1);
CGRect pdfCropBoxRect = CGPDFPageGetBoxRect(pdfPage, kCGPDFMediaBox);
// Copy the page to the new document
CGContextBeginPage(context, &pdfCropBoxRect);
CGContextDrawPDFPage(context, pdfPage);
// Close the source files
CGContextEndPage(context);
CGPDFDocumentRelease(pdfDoc);
}
Best Answer-推荐答案 strong>
我错过了一行代码,因为我们还必须释放 CGContext,所以在循环中只需添加行,其余代码都可以工作。
CGContextRelease (context);
关于ios - 如何以编程方式在iOS中将PDF拆分为单独的单页PDF,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/25992238/
|