我正在尝试使用 iPhone 创建一个字母大小的报告。为此,我创建了一个大的 nib 文件并在其中布置了我需要的所有报告小部件。
现在我正在尝试将视图转换为 PDF。这是我的代码,但它只绘制了屏幕上可见的视图部分。
我缩小了在我的测试 iPhone3GS 中,640x960 视图的框架在调用 viewWillAppear 时变为 320x460 的问题。如果我在将视图另存为 PDF 之前将框架重置为 640x960,则文件将正确显示。什么可能导致视图的框架被切割成可见矩形的大小?我知道对于 iPhone 3GS,视图比例因子是 1,所以这不是缩放问题。
+(NSMutableData *)createPDFDatafromUIView:(UIView*)aView
{
// Creates a mutable data object for updating with binary data, like a byte array
NSMutableData *pdfData = [NSMutableData data];
// Points the pdf converter to the mutable data object and to the UIView to be converted
UIGraphicsBeginPDFContextToData(pdfData, aView.frame, nil);
UIGraphicsBeginPDFPage();
CGContextRef pdfContext = UIGraphicsGetCurrentContext();
// draws rect to the view and thus this is captured by UIGraphicsBeginPDFContextToData
[aView.layer renderInContext:pdfContext];
// remove PDF rendering context
UIGraphicsEndPDFContext();
return pdfData;
}
谢谢!