【问题标题】:Print out webview打印网页视图
【发布时间】:2012-04-24 14:27:48
【问题描述】:

我们如何打印出 webview 包含的内容?我试过类似的东西:

view.page().currentFrame().toPlainText()

但是没有用

PS:我的 webview 包含对 javascript 函数的评估,所以我想 toHtml() 不会做任何建议?

【问题讨论】:

  • 打印出来是什么意思?您追求纯文本、富文本、屏幕抓取吗? :)
  • 实际上我希望 webview 显示 javascript 函数的执行结果,但我最近发现除非在网页中评估该函数,否则这是无法完成的。如果我错了,请纠正我
  • 不确定我是否完全理解您所追求的:您想获取 js 函数的数字/文本输出并在您的 Qt/C++ 应用程序中使用它,还是尝试显示带有 javascript 生成元素的网页?
  • 我宁愿显示一个带有 javascript 生成元素的网页。我也无法弄清楚应该调用什么事件或函数,以及我应该将什么参数传递给函数以获得预期的结果我的webview,我尝试了一些像Firebug这样的浏览器开发工具,但我找不到它是如何工作的,你能帮我举一个静态例子吗?我听说我可以通过添加“调试器”来做到这一点;进入我的javascript代码是真的,我怎么能这样做?thx

标签: javascript qt webkit qtwebkit


【解决方案1】:

QtWebKit 将显示 javascript 生成的网页,与显示任何其他网页完全相同(尽管您可以通过 QWebSettings 禁用 js)。然后我假设您希望网页根据来自 C++ 应用程序的请求生成元素。

如果是这种情况,您需要QWebFrame::evaluateJavaScript(如上一个问题中所述:Qt4: How to call JavaScript functions in a page from C++ via QtWebkit?)。

更一般地说,您可能会发现this 很有用。

【讨论】:

    猜你喜欢
    • 2016-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-26
    • 1970-01-01
    • 2012-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多