欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

基于Gecko内核的简单浏览器实现

程序员文章站 2022-12-24 08:52:37
分享一个基于Gecko内核的简单浏览器实现过程。 项目需要需要开发一个简单浏览器,由于被访问的网页中有大量Apng做的动画,使用IE内核的webbrowser不能播放,使用基于WebKit和Cefsharp试了一下,播放Apng动画也有问题。 顺便分享一下各个项目地址: CefSharp:https ......

分享一个基于Gecko内核的简单浏览器实现过程。

项目需要需要开发一个简单浏览器,由于被访问的网页中有大量Apng做的动画,使用IE内核的webbrowser不能播放,使用基于WebKit和Cefsharp试了一下,播放Apng动画也有问题。

顺便分享一下各个项目地址:

CefSharp:

WebKit.Net:

Geckofx45:

开发步骤如下:

1、新建WinFrom项目

项目Framework版本必须是4.5,目标平台要选32位X86

基于Gecko内核的简单浏览器实现

 基于Gecko内核的简单浏览器实现

2、添加Nuget引用

Install-Package Geckofx45 -Version 45.0.34 

正常引用下项目会添加如下的引用,并自动添加Firefox内核文件夹

基于Gecko内核的简单浏览器实现

3、初始化

public Form1()
{
      InitializeComponent();
      Xpcom.Initialize(Application.StartupPath + "/Firefox");
}

4、创建浏览器对象实现网页浏览

GeckoWebBrowser geckoWebBrowser = new GeckoWebBrowser();
geckoWebBrowser.Navigate("http://www.baidu.com/");
geckoWebBrowser.Dock = DockStyle.Fill;
this.Controls.Add(geckoWebBrowser);

PS:

实现网页缩放比例:

var cv = Xpcom.QueryInterface<nsIDocShell>(geckoWebBrowser.WebBrowserFocus).GetContentViewerAttribute();
cv.SetFullZoomAttribute(0.8);

各种问题都可以看一下: