获取打印预览并将其保存为PDF文件

时间:2013-06-03 07:34:21

标签: iphone ios objective-c ios5 ios4

我想生成网页的打印预览并将其保存为PDF文件。

我试过stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight";

stringByEvaluatingJavaScriptFromString:@"document.body.scrollWidth"; 

查找高度和宽度的函数,但问题是java脚本程序在10秒后停止..

我想使用用于airPrint的默认打印选项,但我不想打印它。

我只是想以PDF格式保存打印预览。

请任何人帮助我..

2 个答案:

答案 0 :(得分:1)

NSString *webServiceUrlString =@"https://www.google.com"; //Google.com is for example use your url
NSData *pdfData = [[NSData  alloc]initWithContentsOfURL:[NSURL URLWithString:webServiceUrlString]];

NSString *resourceDocPath = [[NSString alloc] initWithString:[[[[NSBundle mainBundle]  resourcePath] stringByDeletingLastPathComponent] stringByAppendingPathComponent:@"Documents"]];

NSFileManager *fm = [NSFileManager defaultManager];

NSError *error = nil;
for (NSString *file in [fm contentsOfDirectoryAtPath:resourceDocPath error:&error]) {
    BOOL success = [fm removeItemAtPath:[NSString stringWithFormat:@"%@/%@", resourceDocPath, file] error:&error];
    if (!success || error) {

    }
}

NSString* fileName = @"Your File Name.pdf";
NSString *filePath = [resourceDocPath stringByAppendingPathComponent:fileName];

[pdfData writeToFile:filePath atomically:YES];

答案 1 :(得分:0)

您可以使用 UIGraphicsBeginPDFContextToFile 从您的网页内容中创建PDF文件。

查看以下教程。MAKING A PDF FROM A UIWEBVIEW