DotNetBrowser recognizes device scale factor that is used in environments with HiDPI displays and renders HTML content corresponding to that scale factor.

DotNetBrowser supports HiDPI displays on a PC or Windows 8/8.1/10 notebooks.


However, if your application is DPI-unaware, this may lead to rendering issues in the heavyweight rendering mode because Chromium rendering processes are DPI-aware. As a result, you can see black rectangles and misplaced or partially corrupt picture of the web page.


The screenshot below demonstrates the possible rendering issues in this case:



This issue is not reproducible if the control works in the lightweight rendering mode.


The possible solution here is to make your application DPI-aware.


There are several approaches to make your application DPI-aware, and one of them is demonstrated in the WinForms Chromium demo application (see Samples/WinForms.Demo/MainForm.cs for more details):


public partial class MainForm : Form
{
    [DllImport("User32.dll")]
    public static extern int SetProcessDPIAware();

    //...

    public MainForm()
    {
        SetProcessDPIAware();
        InitializeComponent();
        //...
    }

 //...
}


A couple of links for further information:


http://stackoverflow.com/questions/4075802/creating-a-dpi-aware-application

https://msdn.microsoft.com/en-us/library/windows/desktop/dn469266(v=vs.85).aspx