Set DPI of individual applications in Windows

41

7

Is it possible to set the DPI of individual applications in Windows?

I want to increase the DPI of one or more applications but not the entire system.

Can this be done?

yngvedh

Posted 2009-11-05T10:55:43.807

Reputation: 557

7It's amazing that they still haven't figured out that this is the one thing that would make high DPI displays entirely tolerable WAY before all the developers fix all their apps. – RomanSt – 2014-07-25T00:54:59.933

Answers

18

Is it possible to set the DPI of individual applications in Windows?

In a word, no.

It's a global setting.

Molly7244

Posted 2009-11-05T10:55:43.807

Reputation:

27still very unfortunate nearly five years later – Simon – 2014-08-06T02:52:45.433

1Since Windows 10 is released now does windows 10 support this ? – Ovidiu Buligan – 2015-10-28T08:39:26.920

There's a technique called DPI virtualization, it can be enabled per-application. I posted a link to the tutorial in my answer below. – Andy – 2016-08-14T06:40:35.323

Another 3 years and still no further message. Pity that MS never realized how important is it. – Ben – 2019-10-21T03:19:53.130

22very unfortunate – QueueHammer – 2011-04-08T16:59:45.427

8

Here's a technique that may indirectly address your need. In Windows 8.1 and Windows 10 there is a possibility to enable dpi scaling for old applications written before high-resolution screens appeared. Windows will make an application believe it's drawing on a low-dpi screen and will take care of scaling the entire window for the application, so that the result shows large enough on a high-dpi screen. This will be bitmap scaling, no vector, so expect some blurring as a consequence.

You will need to enable one key in registry, then supply an XML manifest file for each application you want to scale. A good tutorial on this is How to Fix App Scaling Surface Pro 4 + Other High DPI Displays .

Here comes the important section of the external manifest posted in the YouTube video description:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
  <asmv3:application>
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
      <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
    </asmv3:windowsSettings>
  </asmv3:application>
</assembly>

And here comes the the .reg file content that activates external manifest files:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide]
"PreferExternalManifest"=dword:00000001

Andy

Posted 2009-11-05T10:55:43.807

Reputation: 203

10Are you able to summarise the contents of the link in your answer? If the video were taken down or otherwise moved then your answer would become useless to future visitors. – Mokubai – 2016-08-14T08:02:18.873

1As someone who can't watch YouTube videos at work, I second Mokubai's comment. – domsson – 2017-02-14T12:56:07.620

Asked at https://superuser.com/questions/1281939/set-scaling-of-individual-applications-in-windows - how would I implement that. Thanks.

– Martin Cleaver – 2018-01-02T20:26:26.047

7

Yes! It can be done. You can change the DPI setting of an individual application in Windows, but only if it supports it. You can do this in the following way.

If you have a few specific applications that support high DPI settings, but don’t indicate it, you can configure that detail manually. To do so, right-click the shortcut that starts the application (in the Start menu) and choose Properties. On the Compatibility tab, enable the option named Disable Display Scaling on High DPI Settings. If you have a lot of applications to configure, this gets tiring fast.

Note: This will work just fine with Windows Vista and Windows 7 don't know about Windows XP.

bkdubey

Posted 2009-11-05T10:55:43.807

Reputation: 162

If I have 13" my main laptop's and 19" external monitor, does that mean everything I see on my laptop's monitor will be too big? – Boris_yo – 2014-12-08T06:37:06.370

I don't fully understand all the ins-and-outs of this, but I tried this on one application that was giving me significant grief (an older .NET 2.x app), and it seemed to have no impact whatsoever: the layout was just as broken before changing the setting as afterwards. The only workaround I've come up with is to (gaah) run it on a completely different computer. Even doing remote desktop into that remote computer from my high-DPI machine breaks the app. – Ken Smith – 2015-08-10T20:17:43.937

I use a 4K and 2560 ('2K') monitor side by side in Windows 10, and they have the same dimension (27"). So, the 4K display must be scaled 150% or so to be generally usable. I used this compatibility setting to prevent putty.exe from being naively scaled and thus becoming blurry on whichever display is the non-primary display. Now, what's cumbersome about this is that I do have to manually adjust the terminal's font size for when I use it on the 4K display as it would be otherwise too small again, but having the ability to force it to display a legacy program without any scaling is super useful. – Steven Lu – 2018-06-11T07:05:22.787

1I just tested the "Disable display scaling on high DPI settings" on Windows 7. It does not cause text to be rendered "medium" when the global setting is "small" or vice versa. In other words, "Disable display scaling on high DPI setting" does not impact text size in the same way as CP->Display-Set Custom Text size (DPI). – alx9r – 2012-11-01T16:28:54.503

6This disables display scaling; it does not disable high DPI. Display scaling is a backwards compatibility feature that lets bad apps render at 96 DPI and be scaled to whatever DPI the screen is set to (as a bitmap). Some older apps handle High DPI correctly but don't declare it, so they shouldn't fall into the "bad app bucket" that get blurry UI. This setting disables this scaling and tells the app what the real DPI is; it doesn't let the app run at 96 DPI as if DPI scaling were not enabled. – Billy ONeal – 2013-03-10T03:50:50.517

2

SOLUTION FOR WINDOWS 10 in high resolution PCs.

Right click on the software icon/link > properties > tab "compatibility"> change high DPI setting > mark the checkbox "override high DPI scaling behavior"> select "system" in the window below (the default is "application")

have fun

Posted 2009-11-05T10:55:43.807

Reputation: 127