尝试使用UIMarkupTextPrintFormatter打印包含表的html页。由于一些奇怪的原因,当第一页上有足够的空间(2-3英寸)时,最后一行被推入第二页。更糟糕的是,当我从html表中删除最后一行时,现在的最后一行(比已删除的行长几英寸)被分割在第1页和第2页之间,当它在删除该行之前明显适合第1页时。页眉和页脚高度都设置为零。信息也是零。当使用UIWebView和使用UIViewPrintFormatter *formatter = [webview viewPrintFormatter];打印时,同样的html非常适合于1页,但是这需要显示UIWebView (所以它会被呈现),我不想这样做。
对此的任何见解都将受到极大的赞赏。
发布于 2013-04-07 08:36:58
在类似的情况下,但是在我的html表大小固定的情况下,这对我来说是有效的:
formatter.maximumContentWidth = 10. * 72.;可能不是最优雅的解决方案,您必须调整参数(即使它们是动态的)并检查纸张大小的相关性:
UIPrintFormatter *formatter = [[UIMarkupTextPrintFormatter alloc] initWithMarkupText:html];
formatter.startPage = 0;
formatter.contentInsets = UIEdgeInsetsMake(36., 14., 0., 0.);
// prevent to generate an extra blank page
formatter.maximumContentWidth = 10. * 72.;
...
[formatter release];
// please note
printInfo.orientation = UIPrintInfoOrientationLandscape;https://stackoverflow.com/questions/9679840
复制相似问题