53

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?

random
  • 15,201
yngvedh
  • 677

5 Answers5

22

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

In a word, no.

It's a global setting.

11

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
  • 312
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 .

In the video, a .reg file with the following contents is used to activate external manifest files:

Windows Registry Editor Version 5.00

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

and a .manifest file of the following contents is provided:

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

<dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="" publicKeyToken="6595b64144ccf1df" language=""> </assemblyIdentity> </dependentAssembly> </dependency>

<dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.VC90.CRT" version="9.0.21022.8" processorArchitecture="amd64" publicKeyToken="1fc8b3b9a1e18e3b"> </assemblyIdentity> </dependentAssembly> </dependency>

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> <security> <requestedPrivileges> <requestedExecutionLevel level="asInvoker" uiAccess="false"/> </requestedPrivileges> </security> </trustInfo>

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

This file needs to be put in the same folder as the program executable, with the filename APP_NAME.exe.manifest (e.g. for the app "gimp-2.10.exe", the manifest file needs to be saved as "gimp-2.10.exe.manifest").

Andy
  • 271
6

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
  • 167
0

Yes, through a workaround it is possible.

  1. Right click the application's .exe
  2. Select Properties->Compatibility->Change high DPI settings->
  3. check "Use this setting to fix scaling problems instead of the one in Settings"
  4. "Use the DPI that's set for my main display when" = "I open this program"
  5. check "Override high DPI scaling behavior. Scaling performed by" and set to "Application"
  6. click ok and apply
  7. set Windows system wide scaling to the desired scaling for the application
  8. open your application (sometimes you need to open a file with the application too.)
  9. set Windows system wide scaling back to the desired scaling for the system

Now the application will remember the scaling settings until you restart it.

Example: enter image description here

elechris
  • 101