How DPI Scaling works in Windows 8.1
Most Windows users probably do not bother with their operating system's DPI scaling settings at all. The setting determines how items on the screen are displayed which is independent from the screen resolution the monitor is running on. Some users like to increase the DPI scaling to improve the readability of elements on the screen.
The main purpose though is to make sure that items on the screen look fine regardless of resolution and size of monitor. A basic example is that the items on the screen of a 24" Full HD display may look different than items on a screen of a 46" Full HD TV if the same DPI setting is used. Basically, the items will not appear at the same scale when you compare them, with items on the 46" considerably smaller than those on the 24".
That's where DPI comes into play. To improve this, you increase the DPI setting to a larger value to improve the readability and accessibility of items and information on it.
With Windows 8, there is only one DPI setting for all screens you connect your computer to. This is especially a problem for Microsoft's Surface Pro as it ships with a screen resolution of 1920x1080 and a DPI setting of 150% instead of the usual 100%. This works out quite well for the native screen of the Surface Pro, but quickly becomes an issue when you connect it to a larger monitor, for instance at work or at home.
The reason for this is that other screens may not look right when you run them on 150%, and while you can go into the display settings of the Surface Pro to lower it to the - usual - 100%, you would have to modify the setting again once you start to use the Surface's screen again. And that is not even taking into account situations where you may want to use both screens at the same time.
One of the new features of Windows 8.1 is automatic DPI scaling (Microsoft calls it per-display DPI scaling). What is meant by that is that Windows 8.1 will automatically select a DPI scaling for each connected monitor. So, the Surface Pro would be run at 150% while the larger Full HD monitor on your desktop would run on 100% (or whatever the appropriate value is) without the two values interfering with each other in any way.
While automatic should work fine for most users, it is possible to override that in case you prefer to run a single DPI for all connected screens.
DPI Scaling settings in Windows 8.1
The easiest way to open the DPI scaling options is to right-click on the desktop of the operating system (on the screen you want to modify the values for) and select Personalize from the context menu.
Here you then need to click on Display under See also in the lower left corner of the screen.
- The "Let me choose one scaling level for all my displays" determines whether the automatic DPI-scaling of Windows 8.1 is enabled or not. If the setting is unchecked, Windows will automatically select scaling values for each display the PC is connected to.
- You can use the slider, supporting the three states smaller, large and larger to adjust that scaling based on your personal preferences.
- If you check the preference, you disable automatic mode to select a custom DPI setting for all displays instead.
- The display setting can go up to 500% when you click on custom sizing options which is another improvement over Windows 8.
Microsoft employee Gavin Gear explains why this is the case:
Scaling turns out to be a lot harder to change on the fly than resolution. Â Weâ€™ve had resolution change in the ecosystem for about 20 years. Â Apps that need to work with different resolutions are expected to respond to WM_DISPLAYCHANGE and a host of other events to resize themselves. Â Thereâ€™s no comparable event for a scaling change (WM_DPICHANGED is new in Windows 8.1), so there are only a few apps that handle this event today. Â For any app that doesnâ€™t handle this event, Windows has to do the scaling, and that means performing a bitmap scaling operation on the appâ€™s rendered output.
So, Windows 8.1 supports that feature, but the majority of apps and programs do not.Advertisement