【问题标题】:Printing with multiple WebViews使用多个 WebView 打印
【发布时间】:2011-06-22 08:53:24
【问题描述】:

我正在尝试实现与 NSPrintOperation 一起使用的打印视图,它使用许多 WebView 来呈现内容。想想类似主题演讲的幻灯片,其中每张幻灯片都是一个 WebView。

为了有效地做到这一点,我试图只添加当前页面所需的 WebView。

我尝试将 WebView 直接添加为主打印视图的子视图,但 WebView 布局不正确,即使我延迟从打印方法返回以使其有机会完成。

然后我尝试在 WebViews 上使用 cacheDisplayInRect:toBitmapImageRep:,并在 NSImageView 中使用结果,而不是将 WebViews 直接添加到打印视图中。这可行,但位图的打印质量不如我想的那么好。

最后,我想我可以生成一个 PDF,然后使用它。但是 dataWithPDFInsideRect: 方法存在原始问题,布局混乱。

当打印视图的子视图时,我怎样才能让 WebViews 正确布局,或者按照 cacheDisplayInRect:toBitmapImageRep: 的行生成 PDF,这可以与 NSImageView 一起使用?

【问题讨论】:

    标签: cocoa webkit


    【解决方案1】:

    似乎我自己找到了解决方案。如果我使用方法 displayRectIgnoringOpacity:inContext: 来绘制每个 WebView,而不是将它们作为子视图添加到打印视图中,那么布局就可以了。这样做可能是 cacheDisplayInRect:... 在幕后所做的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-25
      • 2012-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-01
      相关资源
      最近更新 更多