iOS通过创建pdf获得错误
我想创建一个pdf文件,但我得到2个错误:
: CGDataConsumerCreateWithFilename: failed to open `/test.pdf' for writing: Operation not permitted. deflateEnd: error -3: (null).
和这个
: CGPDFContextCreate: failed to create PDF context delegate.
我计算控制器类中的路径
- (void)viewDidLoad { documentName = @"test.pdf"; NSArray *arrayPaths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES); NSString *path = [arrayPaths objectAtIndex:0]; NSString* pdfFileName = [path stringByAppendingPathComponent:documentName]; url = [NSURL fileURLWithPath:pdfFileName]; PDFRenderer *pdf = [[PDFRenderer alloc]initWithFileName:documentName]; [pdf renderPDF]; [super viewDidLoad]; }
在渲染类我称之为
UIGraphicsBeginPDFContextToFile(documentName, CGRectZero, nil);
function,我得到错误。
我如何解决这个错误?
您正在写一条相对路径,尝试将其更改为
PDFRenderer *pdf = [[PDFRenderer alloc]initWithFileName:pdfFileName];
即文档目录中的绝对路径。
如果查看错误消息,您将看到正在尝试将文件写入根目录。