首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >drawPageAtIndex挂起在iOS 8.1.1中

drawPageAtIndex挂起在iOS 8.1.1中
EN

Stack Overflow用户
提问于 2014-12-02 19:41:45
回答 1查看 670关注 0票数 3

我正在尝试使用UIPrintPageRenderer drawPageAtIndex: inRect:将四个webViews转换成一个pdf。但是,在iOS 8.1.1中,它在到达此点时挂起。这里没有错误消息,如果我继续下去,代码就会继续中断。有没有其他人看到这个问题,并找到解决这个问题的方法?

当我在渲染器上设置paperRect和printableRect时,它会导致挂起。如果我忽略了这些行,应用程序不会挂起,但最终得到的pdf是空白的。

以下是代码(更新):

代码语言:javascript
复制
int i = 0;
UIPrintPageRenderer *renderer = [[UIPrintPageRenderer alloc] init];
for(UIWebView *webView in webViews) {
    [renderer addPrintFormatter:webView.viewPrintFormatter startingAtPageAtIndex:i++];
}
CGRect paperRect = CGRectMake(0, 0, 612, 792);
CGRect printableRect = CGRectInset(paperRect, 20, 20);
[renderer setValue:[NSValue valueWithCGRect:paperRect] forKey:@"paperRect"];
[renderer setValue:[NSValue valueWithCGRect:printableRect] forKey:@"printableRect"];

NSMutableData *pdfData = [NSMutableData data];
// Render the html into a PDF
UIGraphicsBeginPDFContextToData( pdfData, CGRectZero, nil );
for (NSInteger i=0; i < [renderer numberOfPages]; i++)
{
    UIGraphicsBeginPDFPage();
    CGRect bounds = UIGraphicsGetPDFContextBounds();
    [renderer drawPageAtIndex:i inRect:bounds];  <-- Hangs here
}
UIGraphicsEndPDFContext();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-05 22:40:35

我给其他可能遇到这个问题的人发这个帖子。出现此挂起是因为Xcode中启用了异常断点,并且出现了异常。异常显然发生在UIPrintPageRenderer drawPageAtIndex: inRect:的实现中。您可以忽略此异常,代码将按预期继续运行。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27257600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档