111

My laptop is a 15" wide screen running at 1600x1050, and in addition to that I connect an external 19" LCD which runs at 1280x1024. The problem with this setup is that if I increase the text size to make the laptop screen readable, the text on the external LCD is huge. Normal text on the LCD results in tiny text on the laptop.

What options do I have to get around this?

dlux
  • 4,631

11 Answers11

43

DPI settings affect the entire desktop, regardless of number or arrangement of monitors. You cannot have two different DPI settings on two monitors.

Update:

This is untrue as of Windows 8.1, which adds many DPI scaling enhancements, including per-display DPI settings. Although some may not find the implementation offers enough control.

Josip Medved
  • 8,909
27

A bit of a hack is:

If you are always using a certain application on one screen, you can set that application to ignore DPI settings. For example, I have Visual Studio on my big monitor set to ignore DPI (100%). Everything else on my retina laptop monitor is at 145%.

The setting "Disable display scaling on high DPI settings" is under compatibility under the properties menu of the application exe.

olly
  • 271
19

It finally does work in Windows 10 although many apps still would not scale correctly. It works almost as good as on OSX.

For higher DPI 1st monitor (200% scale)

enter image description here

For lower DPI 2nd monitor (100% scale) enter image description here

It is important NOT to use following scaling (it should be set to 100%). By default using MacBook retina driver pack it would be set to 150/200%. enter image description here enter image description here enter image description here enter image description here

8

Note: Windows 8.1, contrary to Microsoft's claims, does not truly support running multiple DPI's on separate monitors.

I have a laptop with windows 8.1 and 3840x2160 16" screen. In order for dialog boxes, windows etc. to be a usable size it must run at 200% scale (comparable real estate to a typical 16" 1080p display but with UI elements, text, and photos all rendered sharper).

When apps are moved from the laptop monitor onto the external monitor, as soon as more than half of teh window is dragged over the window is resized. The problem with this is the menu bars, cursor, etc. are not natively redrawn at the new DPI setting, the entire application window, toolbars and all is drawn at 200DPI then bitmap resized to 50% in order to fit on the external monitor. Only the 200% DPI scale is being used at once, whereas other DPIs for external monitors are [poorly] virtualized. A very blurry bilinear scaling is used, and text is completely unreadable on the external monitor. This means the benefit of things like cleartype text (which relies on 1:1 pixel rendering and actually uses sub-pixel anti aliasing) is not achievable when mixed DPIs are used.

A select few applications (IE, powerpoint) are listed per-monitor DPI aware. In this case, the contents of the windows are redrawn at the correct size and cleartype within the apps still functions but the menu bars, title bar, even the cursor are still drawn at 200% scale -- rendering them unusably large on external monitors. I suspect this exception was made so that fullscreen presentations could still be done without the blurry bitmap scaling. With 200% scale toolbars though, these apps are not usable for anything other than fullscreen mode.

At this point there is no getting around having to restart the computer to change DPI every time you plug into external monitor and use external monitor only.

3

I solved this issue by changing the "apparent DPI" (and thus text size) of the monitors. Placing the external 19" LCD further away will reduce the apparent size of the font.

If you don't want to/can't place the displays like that, you can also use the Thinkpad screen at a lower resolution to increase the apparent font size. Calculate the DPI here and make sure they match.

Leftium
  • 9,335
3

You (should) be able to. In Linux you could do it like this:

  1. Create a X VNC Server with the size of two times the smaller screen. For example: you have two monitors, same size, but 1920 and 1600 pixels wide: you make a virtual server of two times the better one: 3840px wide (1080px height).

  2. Open two VNC clients against the server you just created. Put one in each screen. Full screen. Scale 1:1. Scroll the window on the right to show the rightmost part of the Vnc server. Since the pixels are different size, everything will look bigger in the screen of 1600px. Zoom out that one until sizes fits.

This is obviously very simple and has grave drawbacks (no direct rendering, probably slow, etc). But if you could do the same with proper framebuffers and such...

Daniel
  • 31
2

A workaround (although I haven't found how to do it in Windows 7) is enabling desktop panning/scrolling, that way it could be possible to set any resolution in smaller displays so font size would be similar.

t3mujin
  • 310
1

As other answers have pointed out, DPI settings can't be adjusted per-monitor (or per-application).

If you need specific applications running in a different DPI than the rest of the desktop, consider using a virtual machine.

1

I've solved the issue with setting a custom resolution to the second monitor. That way, you can effectively "fake" the different DPI-setting. But note that it depends on the actual monitor, whether it displays non-standard resolution at all. Also, it might produce a terrible, blurry image, but you can decide if you can live with it. It's far from optimal, but at least solves the "different size"-issue... (Of course the graphics driver has to support it too. Nvidia does, others I don't know.)

void
  • 11
0

The procedure by changing simply text size on each monitor works fine (Windows 10), but there is a huge problem by blurring!. See this topic

Sam
  • 884
Tomas
  • 1
-1

I had a similar issue, realizing that font was set at 125% across my 2 monitors. So I simply lowered the laptop resolution from 1920X1080 to 1600X900 and then reduced the font to 100% in the Control Panel\All Control Panel Items\Display. This kept the font readable on the laptop while also reducing its size as I wanted on my external monitor, which is still set at 1920X1080.

Amir
  • 1