最近有个h5前段项目只能用火狐打开才能用(flash 插件支持),想来想去没啥好办法,就想用C#做个自定义浏览器,进行定制打开,简单做法就是
https://bitbucket.org/geckofx/geckofx-33.0 gexkofx 下载地址
C# 引入dll 截图
public partial class Form1 : Form
{
// GeckoWebBrowser gecko = new GeckoWebBrowser();
Gecko.GeckoWebBrowser gecko= new Gecko.GeckoWebBrowser(); //初始化一个GeckoWeb浏览器空间
public Form1()
{
InitializeComponent();
Xpcom.Initialize("Firefox");
//GeckoPreferences.User["gfx.font_rendering.graphite.enabled"] = true;
GeckoPreferences.Default["extensions.blocklist.enabled"] = true;
//Gecko.GeckoPreferences.Default("extensions.blocklist.enabled") = false;
initFireFox();
OpenURL(ConfigUtil.GetValue("urlconfig", "urlstring")); ConfigUtil是对 ini文件读取的封装类
}
private void initFireFox()
{
gecko.CreateControl();
gecko.NoDefaultContextMenu = false; //禁用右键菜单
gecko.Dock = DockStyle.Fill;
this.Controls.Add(gecko); //添加到窗口中*/
}
private void OpenURL(String url)
{
gecko.Navigate(url);
}
///
<!-- 图片缩略图 -->
<dependency>
<groupId>net.coobird</groupId>
<artifactId>thumbnailator</artifactId>
<version>[0.4, 0.5)</version>
</dependency>
<!-- 视频缩略图 -->
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>0.8</version>
</dependency>
视频压缩包爆出 缺少 libXv.so.1:文件,问题考虑,报告这个问题是因为org.bytedeco调用 C++动态库进行视频压缩是缺少固定的导致,在linux进行将相应的软件进行安装就可以,当然知道 是基于java JNI技术实现,JNI解决了java调用非JDK库的能力,对于JDK处理openGL openCV 相关的东西都是比较困难的(这里说的是用java去实现一套,没必要),只能通过JNI技术
解决办法:
yum install libXv*
yum install SDL(视错误情况而定)