use*_*331 6 pdf objective-c uiview ios
我在这里有这个代码,我把UIView放入PDF中.我遇到的问题是我的视图是一个详细视图控制器并且是可滚动的,而PDF只获取当时详细视图控制器内部的内容而不是完整视图,如果我在详细视图中移动,它将捕获任何内容部分我在,而不是完整的事情.我正在尝试做什么?
- (IBAction)Share:(id)sender {
NSMutableData *pdfData = [NSMutableData data];
// Points the pdf converter to the mutable data object and to the UIView to be converted
UIGraphicsBeginPDFContextToData(pdfData, spreadSheet.bounds, nil);
UIGraphicsBeginPDFPage();
CGContextRef pdfContext = UIGraphicsGetCurrentContext();
// draws rect to the view and thus this is captured by UIGraphicsBeginPDFContextToData
[spreadSheet.layer renderInContext:pdfContext];
// remove PDF rendering context
UIGraphicsEndPDFContext();
// Retrieves the document directories from the iOS device
NSArray* documentDirectories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);
NSString* documentDirectory = [documentDirectories objectAtIndex:0];
NSString* documentDirectoryFilename = [documentDirectory stringByAppendingPathComponent:@"test.pdf"];
// instructs the mutable data object to write its context to a file on disk
[pdfData writeToFile:documentDirectoryFilename atomically:YES];
NSLog(@"documentDirectoryFileName: %@",documentDirectoryFilename);
UIActivityViewController * activityController = [[UIActivityViewController alloc] initWithActivityItems:@[pdfData] applicationActivities:nil];
UIPopoverController *popup = [[UIPopoverController alloc] initWithContentViewController:activityController];
[popup presentPopoverFromRect:CGRectMake(self.view.frame.size.width - 36, 60, 0, 0)inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
UPDATE
我一直在努力解决这个问题,我无法全面了解PDF,我一直在考虑采用我的NSMutableArray和我的NSArray的路线,这是我的UIView中使用的数据,并尝试将其转换为除非有人知道如何做到这一点,否则制作格式很简单,这听起来非常费时.我想我很困惑我应该采取哪条路线.
将某些内容渲染到上下文中只会渲染视图层次结构中当前的内容。这意味着,如果您使用UITableView或UICollectionView,则并非代表数据的每个单元格在任何给定时间都位于层次结构中。如果是我,我会尝试暂时将视图设置为具有巨大的框架,以便所有内容都位于层次结构中。如果这不起作用,我将编写一个自定义视图,根据请求可以为所有数据布局所有内容,然后在渲染完成后重置为更有效的布局。
| 归档时间: |
|
| 查看次数: |
1910 次 |
| 最近记录: |