【问题标题】:Cannot run WebGL content on WebView无法在 WebView 上运行 WebGL 内容
【发布时间】:2019-09-07 10:25:27
【问题描述】:

我正在尝试从 wxPython WebView 打开一个包含 WebGL 内容的网页。 WebView 使用的引擎webkit 支持WebGL。
如何在 WebView 中呈现 WebGL 内容?

我使用的完整代码:

import wx
import wx.html2


class MyBrowser(wx.Frame):
    def __init__(self, *args, **kwds):
        wx.Frame.__init__(self, *args, **kwds)
        sizer = wx.BoxSizer(wx.VERTICAL)
        self.browser = wx.html2.WebView.New(self)
        sizer.Add(self.browser, 1, wx.EXPAND, 10)
        self.SetSizer(sizer)
        self.Maximize()


if __name__ == '__main__':
    app = wx.App()
    dialog = MyBrowser(None, -1)
    dialog.browser.LoadURL("https://get.webgl.org/")
    dialog.Show()
    app.MainLoop()

给出下面的屏幕

此外,从 WebView 打开 https://whatsmybrowser.org 会将浏览器标识为 Safari(使用 Ubuntu 时)。在此处查看完整描述:https://whatsmybrowser.org/b/X43YSDV

【问题讨论】:

  • 该错误似乎表明没有支持。那你怎么知道它在那里?
  • @Igor 引擎是官方支持webGL的webkit:webkit.org/status/#?search=webgl。我的假设是,如果引擎支持它,那么 webkit 也应该支持它,我可能会在某处遗漏一些东西。
  • 没有必要。作为测试,您可以直接在浏览器中打开您正在尝试的站点/页面(而不是使用 wxPython)吗?你会得到同样的行为吗?您应该阅读有关如何调整浏览器以支持您需要的内容。
  • @Igor 该页面在浏览器中运行良好。

标签: webview webkit webgl wxpython


【解决方案1】:

我在 wxpython webview 中找不到对 webGL 的支持。
我的解决方案是使用cefpython。 cefpython 在 python 应用程序中嵌入了完整的 chromium 浏览器。这是使用 cefpython 的 wxpython 示例:https://github.com/cztomczak/cefpython/blob/master/examples/wxpython.py

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-06-30
    • 2022-09-28
    • 1970-01-01
    • 1970-01-01
    • 2017-08-18
    • 2015-12-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多