将PDF转换为UIImage时,“MediaBox”丢失或无效

时间:2011-12-10 22:53:02

标签: iphone objective-c ios xcode core-graphics

我正在尝试将PDF转换为UIImage,但我遇到了各种奇怪的错误。我没有在drawRect方法中进行转换,因为我没有在屏幕上显示图形。我有什么想法可以使这项工作?

我正在尝试的代码是:

CGPDFPageRef page = [self getPage:pageIndex];

CGRect pageRect = CGPDFPageGetBoxRect(page, kCGPDFMediaBox);
float pdfScale = 1024.0/pageRect.size.height;
pageRect.size = CGSizeMake(pageRect.size.width*pdfScale, pageRect.size.height*pdfScale);    

UIGraphicsBeginImageContext(pageRect.size); 
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetRGBFillColor(context, 1.0,1.0,1.0,1.0);
CGContextFillRect(context,pageRect);    
CGContextSaveGState(context);
CGContextTranslateCTM(context, 0.0, pageRect.size.height);
CGContextScaleCTM(context, pdfScale,-pdfScale); 
CGContextDrawPDFPage(context, page);
CGContextRestoreGState(context);

UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

0 个答案:

没有答案