I have a Windows 8.1 laptop (Dell XPS) with a high-DPI screen (15" 3840x2160), and two external monitors which are normal DPI (19" 1920x1200). (No font changes from defaults.)
Windows 8 seems to know about the varying DPI, and most things work very well. If I move a window from the high-DPI screen to a low-DPI screen, then the window will spontaneously change size so the text is readable on the current display.
Programs which work fine:
- "
gitk
", launched from a Cygwin terminal using X-Win. - notepad
- Almost everything else
A few programs cause trouble. They have tiny, unreadable text, on both the high-DPI screen and the low-DPI monitors. Examples include:
JMeter
, launched frommaven
(a Java Swing application)- "
git-gui
", launched from a Cygwin terminal using X-Win. - The windows shell, "Command Prompt"
(Sometimes the problem comes and goes depending on whether the laptop booted up while connected to the low-DPI monitors or if I booted without them and then subsequently plugged them in (related to How do I make Windows scale the taskbar correctly after I switch to monitors with different DPIs? ).)
- Is there any way I can scale up the window for a specified application, when that app is not Windows DPI aware? The Windows magnifier is quite clunky for this.
- Is there any way I can override the declared DPI for a specified application without affecting other apps?
Here is a screenshot showing Command Prompt, Notepad, Git Gui and Gitk on the same screen: