CefSharp High DPI问题的解决 -Mikel

CefSharp High DPI问题的解决

2019年10月14日 分类: C#

来源: CefSharp High DPI问题的解决

使用CefSharp控件,在部分高分辨率的电脑中(显示缩放比例非100%,而是120%或者125%等)会出现以下一些情况:

技术分享图片

技术分享图片

显示的页面中出现了黑边,且按钮定位也偏了,比如点击【图层】按钮,需要点击上面黑色边框中的相对位置。

 

解决方案:

1、在当前电脑的桌面,右键-显示设置,把显示比例调整为100%(需要重启电脑生效),这时再看,显示就正常了;

2、在当前项目中,添加一个【应用程序清单文件】(app.manifest),在根节点(assembly)下,添加以下代码,重新运行程序,则和方法1的效果就一样了:

  <application xmlns="urn:schemas-microsoft-com:asm.v3">
    <windowsSettings>
      <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware>
    </windowsSettings>
  </application>

3、使用CefSharp自带的方法:

找到Cef.Initialize(setting);语句,在其下添加Cef.EnableHighDPISupport();

当程序加载了ChromiumWebBrowser控件后,就会把当前的显示比例调整为100%了

            Cef.Initialize(setting);
            Cef.EnableHighDPISupport();

 

优先选择 【方法3】


标签: ,
本文的评论功能被关闭了.
备案信息冀ICP 0007948