30

My laptop has a 17 inch 4k screen, running Windows 10 and Ubuntu 1604. Both systems are set to 2x scaling. But Mathematica 11 (released 2016-08-08) is still blurry like version 10. Is there a simple fix to this problem?

Michael E2
  • 235,386
  • 17
  • 334
  • 747
Kaa1el
  • 561
  • 4
  • 9

5 Answers5

11

The best thing to do, IME, is to set the default notebook zoom level to something higher. This way, the text is rendered crisply and at a reasonable size.

You can do that as follows:

  1. Go to Preferences -> Advanced -> Open Option Inspector
  2. Set Show option values to Global Preferences
  3. Go to Notebook Options
  4. Go to Display Options
  5. Change magnification to whatever works for you.

Now, "100%" (default mag) will be rendered at whatever magnification you chose here.

Ben Kalziqi
  • 1,082
  • 8
  • 17
  • This doesn't seem to address the resolution issue or am I missing something? I have my Windows setup at high DPI too and this doesn't alter the crispness of the resulting display. – Mohammed AlQuraishi Aug 15 '16 at 12:38
  • 1
    @MohammedAlQuraishi Disable "DPI scaling" for Mathematica, then do what is suggested, which effectively boils down to SetOptions[$FrontEnd, Magnification -> 1]. A lot of things will not look quite right after this though (e.g. the search box in documentation), but better than nothing. – masterxilo Aug 18 '16 at 18:54
  • On 4K, I recommend Magification -> 3 at least. – Dmitri Nesteruk Aug 23 '16 at 11:39
  • The problem with this solution is that the Welcome screen and file names in the initial window are not scaled and are unreadable. Only once I open a Notebook I can read the text properly. – divenex Aug 29 '18 at 18:23
  • 1
    Also if you use method in the answer, then do this (but be aware that, notebook will look fine but everything other will be small):
    1. Leftclick Mathematica shortcut.
    2. Compability.
    3. Change high DPI settings.
    4. High DPI scalling override.
    5. Set dropdown box to "Application".
    – vasili111 Sep 12 '19 at 19:30
  • 2
    I'm on Mathematica 12 and unfortunately this doesn't make any difference for me. – iBug Nov 24 '19 at 11:57
9

Mathematica 11.2 seems to use Qt 5.6 framework which supports DPI scaling override. At least on Linux, it's possible to get bearable results by starting Mathematica as follows:

QT_SCALE_FACTOR=1.5 Mathematica

QT_SCALE_FACTOR is an environment variable that defines UI scaling. It seems to work quite well except for the splash screen.

  • Does this work in Windows as well? – Pirx Nov 08 '17 at 12:13
  • You could try setting an environment variable either from CMD prompt or globally (remember to remove it later as it may break other QT apps) – Vladislav Ivanov Nov 08 '17 at 13:02
  • That doesn't seem to do anything. I have a hunch that Mathematica does not use the QT framework on Windows. Oh well, with the disaster that is Windows 10 I may be switching to Mac OS soon anyway (Macbook Pro is on order). Then I hear that the Mac frontend is still 32-bit, with accompanying limitations. Can't win. Unless I switch to Linux... – Pirx Nov 08 '17 at 23:24
  • It wouldn't make sense to use one toolkit on Linux and another on Windows. You can check the program directory to see if there are files like QtCore5.dll. I have tried to run another Qt app in Windows and it worked for me this way: C:\Users\User>set QT_SCALE_FACTOR=2 \ C:\Users\User>"C:\Program Files (x86)\SpeedCrunch\speedcrunch.exe" – Vladislav Ivanov Nov 09 '17 at 08:58
  • 1
    There are no Qt libraries for Mathematica on Windows, and no acceptable high-DPI behavior can be achieved in Windows. Mathematica is near-unusable under high-DPI Windows scenarios. – Pirx Dec 24 '17 at 03:52
  • That's so weird. I'll check it when I have a chance. Maybe it just uses older Qt version and it's statically linked. – Vladislav Ivanov Dec 25 '17 at 07:07
  • This makes dialog boxes gigantic, although the rest of Mathematica is okay. – Geremia Dec 02 '20 at 22:35
6

With Windows 10 Build 15002 and above, you can use the following settings to obtain a higher resolution of MMA than magnification for 200%, for example. Setting

Eric Lou
  • 71
  • 2
  • 5
6

After a long wait, finally, Mathematica 12.1, launched in March 2020, introduces full support for high DPI monitors for both Windows and Linux. The upgrade from previous versions of Mathematica is beautifully impressive on a high-DPI screen!

divenex
  • 616
  • 5
  • 12
4

I just wanted to add up to the answer by divenex.

Indeed, since version 12.1 Mathematica can perform a proper Hi-DPI scaling. I tried it on Ubuntu 20.04 LTS and the result was satisfying everywhere, except the initial splashscreen that is still somewhat broken. Both the UI elements and notebook contents, including code suggestions, scale correctly.

One non-trivial trick I wanted to mention, that could save someone's time:

In order to achieve proper scaling, one should navigate to Format → Object Inspector → Global Preferences → Global Options → System Configuration and set ScreenResolutionCompatibilityMode → False. Then inside the field ScreenInformation in the same panel, one should set Resolution→xxx, where xxx can be obtained by running xdpyinfo | grep resolution in Ubuntu.

Quick demonstration. Before:

Scaling before

And after the aforementioned modification:

Scaling after

MKM
  • 41
  • 2