【发布时间】:2015-05-13 18:55:34
【问题描述】:
我正在使用 Android Print Framework 将 WebView 的 HTML 内容保存为 PDF。由于 Android-L 中的 WebView 有一种新的方法来呈现 WebView 内容,因此建议在创建任何 webview 之前调用 enableSlowWholeDocumentDraw() 方法。这将禁用渲染优化,因此 WebView 将能够渲染整个 HTML 页面。
这是将 WebView 绘制成 Canvas 的部分代码。
PdfDocument.Page page = document.startPage(pageInfo);
mWebView.draw(page.getCanvas());
我尝试从 Application、BaseActivity 以及在我的 Fragment 中创建 WebView 之后和之前调用 WebView.enableSlowWholeDocumentDraw()。但这没有帮助。
我尝试通过将层类型设置为软件和硬件来启用/禁用硬件加速,但这也没有帮助。我仍然无法绘制整个 WebView。只有可见部分会被绘制到画布上。
有人注意到这种行为吗?是否有解决方案或者这是一个错误?
编辑
事实证明这与WebView.enableSlowWholeDocumentDraw() 无关,我们仍在讨论这个问题。这是Bug Report。这是重现问题的Sample App。
【问题讨论】:
标签: android android-webview android-5.0-lollipop chromium