基於Gecko內核的簡單瀏覽器實現


分享一個基於Gecko內核的簡單瀏覽器實現過程。

項目需要需要開發一個簡單瀏覽器,由於被訪問的網頁中有大量Apng做的動畫,使用IE內核的webbrowser不能播放,使用基於WebKit和Cefsharp試了一下,播放Apng動畫也有問題。(CefSharp最新版本已經解決動畫問題,但有時候比例會有一點點問題)

順便分享一下各個項目地址:

CefSharp:https://github.com/cefsharp/CefSharp

WebKit.Net: https://github.com/webkitdotnet/webkitdotnet

Geckofx45:https://www.nuget.org/packages/Geckofx45/45.0.34

開發步驟如下:

1、新建WinFrom項目

項目Framework版本必須是4.5,目標平台要選32位X86

 

2、添加Nuget引用

Install-Package Geckofx45 -Version 45.0.34 

正常引用下項目會添加如下的引用,並自動添加Firefox內核文件夾

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);

各種問題都可以看一下:

https://bitbucket.org/geckofx/geckofx-45.0/issues


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM