我正在开始一个我自己的新项目,主要是创建一个简单的3D网页浏览器(还有其他一些超出主题的额外内容)。我已经拥有了3D前端的工具,他们将使用Unity进行C#。
我已经了解了当前的Web浏览器解析/呈现过程,并得出结论我不应该重新实现整个html / css解析。
所以,我需要的是一种可以从html / url获取可读渲染树的方法,我可以在渲染之前获取元素及其所有已处理样式属性的列表。
Webkit似乎就是这个工作,我看到它有RenderObject和创建树的相关类,但我仍然在构建/与Visual Studio集成。
有人做了类似的事情,可以指向我需要从中派生的类或项目吗?
我也研究过其他托管代码开源项目:
CSSBox:用java编写,很好地处理基本网站,但仍然遗漏了一些CSS样式,没有JS引擎。
HTMLRenderer:用C#编写,仅测试样本页面,而不是来自在线网站。还错过了JS引擎和webkit的所有强大功能。