Set DPI of individual applications in Windows

99,823

Solution 1

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

In a word, no.

It's a global setting.

Solution 2

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.

Solution 3

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

Solution 4

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")

Share:
99,823

Related videos on Youtube

user1577603
Author by

user1577603

Updated on September 17, 2022

Comments

  • user1577603
    user1577603 over 1 year

    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?

    • RomanSt
      RomanSt almost 10 years
      It'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.
    • T S
      T S over 3 years
      As this still doesn't seem to be possible, I added a suggestion in Microsofts Feedback Hub: aka.ms/AAb5aq5
  • QueueHammer
    QueueHammer about 13 years
    very unfortunate
  • alx9r
    alx9r over 11 years
    I 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).
  • Billy ONeal
    Billy ONeal about 11 years
    This 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.
  • Simon
    Simon almost 10 years
    still very unfortunate nearly five years later
  • moritzebeling
    moritzebeling over 9 years
    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?
  • Ken Smith
    Ken Smith almost 9 years
    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.
  • Ovidiu Buligan
    Ovidiu Buligan over 8 years
    Since Windows 10 is released now does windows 10 support this ?
  • Andy
    Andy almost 8 years
    There's a technique called DPI virtualization, it can be enabled per-application. I posted a link to the tutorial in my answer below.
  • Mokubai
    Mokubai almost 8 years
    Are 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.
  • domsson
    domsson over 7 years
    As someone who can't watch YouTube videos at work, I second Mokubai's comment.
  • Martin Cleaver
    Martin Cleaver over 6 years
    Asked at superuser.com/questions/1281939/… - how would I implement that. Thanks.
  • Steven Lu
    Steven Lu almost 6 years
    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.
  • Ben
    Ben over 4 years
    Another 3 years and still no further message. Pity that MS never realized how important is it.
  • midenok
    midenok about 4 years
    Isn't it more simple just to go to shortcut properties and disable DPI scaling in Compatibility (8.1)? Your suggestion does not solve custom DPI values.
  • midenok
    midenok about 4 years
    Please, don't lie to people. It can't be done as asked in the question (at least in 8.1).
  • Alex
    Alex over 3 years
    This would make 2020 ultimately epic