I am sure you have noticed that some applications on Windows 10 look crisp and sharp, while others are blurred and unappealing text. This is a common problem because not all apps are made to scale automatically, and even if you have an excellent GPU and higher resolution, nothing seems to work. That’s where dots per inch or DPI comes into the picture. It assures sharper images, but high resolution also means the apps need to scale properly and delivers it accordingly. While you can set Windows to scale apps, if you need to figure out the DPI Awareness for each app, follow this post.
DPI Awareness means if the app is aware of scaling and adjusting the pixel settings according to the monitor and resolution. Also, this post will make you aware of why some apps look blurry while others look sharp as you move between the monitors.
View DPI Awareness Mode of Apps in Task Manager
Right-click on the taskbar and select Task Manager. Switch to the Details section, and right-click on any of the columns; select the columns option from the menu.
Here you will get a plethora of columns you can add to the Task Manager details section. Locate and check the DPI Awareness column, and click on the Ok button.
Notice that each application has a different type of DPI Awareness. Here is a simple explanation of each of the types.
Unaware:
Most of the monitors are built such that they support a DPI value of 96. However, monitors support much larger DPI, e.g., 200, and when these applications run on-screen with a display scale greater than 96, they appear blurry.
System:
If you have noticed that some apps appear excellent on one monitor, while on others, they look blurry. It happens because of the System DPI Awareness. When the computer boots and you log in, the applications are optimized for the primary monitor. But when the application is moved between two monitors, which are of different resolution, the DPI changes as Windows will stretch the app to adjust, and it will, in turn, become blurry.
It is always good to buy the same type of monitor if you are using multiple, so you don’t face this problem.
Per-Monitor:
What works best is if the applications are made aware that they should change based on monitor resolution and scaling. This allows apps to render correctly whenever the DPI changes, i.e., apps move between monitors. When using this, Windows does not bitmap stretch the application UI. Technically, Windows sends out WM_DPICHANGED to the application window instead of using the bitmap stretch. This is available since Windows 8.1
Per-Monitor v2:
Windows 10 now includes all parts of an application made aware of the change, no bitmap scaling, automatic non-client area (window caption, scroll bars, etc.) DPI scaling by Windows, raw pixels of each display, dialogue boxes are automatically scaled, and so on. If an application doesn’t follow this, you may see the app appear to be too small.
Framework or Technology that supports DPI Awareness includes UWP, Raw Win32, Windows Forms, WPF, GDI/GDI+, and MFC.
Read: How to disable DPI virtualization or Lower the overall Windows DPI setting system-wide.
That said, this post can only help you understand if the apps are blurry, then what could be the reason behind it. Most of the modern applications now support Per-Monitor v2 while those are still on unaware and system, and there are many, will cause the problem. I face this almost every day with so many applications, and there is no way to fix them. These applications need to be fixed by the developer using the Microsoft API.