美文网首页
Cefsharp 开源项目默认字体

Cefsharp 开源项目默认字体

作者: Imjeef | 来源:发表于2021-08-18 14:30 被阅读0次

    近期使用了Cefsharp框架开发应用,发现有一个问题,如果页面没有定义font-family的样式,则其页面默认字体一直是Simsun,如图:


    image.png

    在我的浏览器中表现为使用了“宋体”渲染。

    搜索了一通发现网友们也没有提供好的办法,于是自己摸索的一番。

    怀疑是资源文件内部定义了默认字体,尝试打开zh_CN.pak文件搜索,设置区域为zh_CN:无效(虽然内部定义‘Simsun’样式)
    还有cef.pak文件,并没有相关的样式定义。

    最后发现BrowserSetting类。
    我们可以在控件里边设置BrowserSetting属性定义默认的字体

    public class Browser: ChromiumWebBrowser
        {
            public Browser(string address)
                :base(address)
            {
                SetStyle(System.Windows.Forms.ControlStyles.AllPaintingInWmPaint, true);
                SetStyle(System.Windows.Forms.ControlStyles.ResizeRedraw, false);
                SetStyle(System.Windows.Forms.ControlStyles.OptimizedDoubleBuffer, true);
                this.DownloadHandler = new DownloadHandler();
                this.IsBrowserInitializedChanged += Browser_IsBrowserInitializedChanged;
                //this.RegisterJsObject("Test", this);
                //重写默认字体为微软雅黑
                BrowserSettings = new BrowserSettings();
                BrowserSettings.StandardFontFamily = BrowserSettings.SansSerifFontFamily = BrowserSettings.SerifFontFamily = BrowserSettings.FantasyFontFamily = BrowserSettings.FixedFontFamily = BrowserSettings.CursiveFontFamily = "Microsoft YaHei";
            }
    }
    

    cefsharp版本:49
    cef版本:3.2623

    相关文章

      网友评论

          本文标题:Cefsharp 开源项目默认字体

          本文链接:https://www.haomeiwen.com/subject/ijygbltx.html