CEF 設置:禁用 GPU 硬件加速


在高分辨率下, 如果設置了系統-顯示-縮放級別(例如設置為200%縮放級別)的情況下, CEF 49版本(高版本未測試是否有這個問題)會出現黑邊、黑屏的情況,

這時候需要禁用gpu加速,有兩種方式,

第一種是在程序快捷方式中加command-line flag: --disable-gpu --disable-gpu-compositing, reference:https://bitbucket.org/chromiumembedded/cef/issues/1480/off-screen-rendering-problem-on-windows-7

clickonce發布的程序無法設置快捷方式,所以:

第二種:在代碼中設置:

var settings = new CefSettings();

//NOTE: The following function will set all three params
//settings.SetOffScreenRenderingBestPerformanceArgs();
settings.CefCommandLineArgs.Add("disable-gpu", "1");
settings.CefCommandLineArgs.Add("disable-gpu-compositing", "1");
settings.CefCommandLineArgs.Add("enable-begin-frame-scheduling", "1");

settings.CefCommandLineArgs.Add("disable-gpu-vsync", "1"); //Disable Vsync

//Disables the DirectWrite font rendering system on windows.
//Possibly useful when experiencing blury fonts.
settings.CefCommandLineArgs.Add("disable-direct-write", "1");

if (!Cef.Initialize(settings, shutdownOnProcessExit: true, performDependencyCheck: true))
{
throw new Exception("Unable to Initialize Cef");
}

 


免責聲明!

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



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