我正在尝试使用包含UITextfield,UITextview和UIImage的不同单元格创建UITable。我想生成一个类似报告的pdf,其中包含所有单元格,包括图像和文本。
我有为UITableviewcell制作一个屏幕截图的代码。但我不知道如何制作多个屏幕截图,然后将它们合并在一起形成一个pdf文件。
以下是制作UITableviewcell屏幕截图的代码。感谢
NSUInteger index[] = {0, 0}; // section, row
NSIndexPath *indexPath = [[NSIndexPath alloc] initWithIndexes:index length:2];
// Get the cell
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
// Render a graphics context to turn your cell into a UIImage
CGSize imageSize = cell.bounds.size;
UIGraphicsBeginImageContext(imageSize);
CGContextRef imageContext = UIGraphicsGetCurrentContext();
[cell.layer renderInContext:imageContext];
// Retrieve the screenshot image
UIImage *imagefinal = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(imagefinal, nil, nil, nil);
答案 0 :(得分:1)
我不知道如何拍摄多个屏幕截图,但我已经完成了一些编码,用于合并两个图像,您需要对此代码进行一些更改以合并多个屏幕截图。这是代码。
CGSize endImageSize = CGSizeMake(0, 0);
endImageSize = CGSizeMake(CELL_IMAGE_WIDTH,DesiredHeight);
UIGraphicsBeginImageContext(endImageSize);
// draw images into this context
[anOriginalImage1 drawInRect:CGRectMake(0, 0,
endImageSize.width, IMAGE1_HEIGHT)];
[anOriginalImage2 drawInRect:CGRectMake(0, IMAGE1_HEIGHT,
endImageSize.width, IMAGE2_HEIGHT)];
//convert context into a UIImage
UIImage *endImage = UIGraphicsGetImageFromCurrentImageContext();
//cleanup
UIGraphicsEndImageContext();