wiki:Help/HiDPISupport

HiDPI support

This page contains information on how to use JOSM with a high-resolution display.

Basics

  1. Proper HiDPI-support was added with Java 9, so make sure you are running Java 9 or later.
  2. JOSM version r12722 or later is required.

You can expect best results with even scale factors, e.g. 200%, 400%, ... but other values are supported as well.

How to enable HiDPI mode

If HiDPI mode is not enabled out-of-the-box, here are ways to activate it.

Windows

On Windows, you can activate scaled display mode system-wide. See for example this extensive help page.

For Windows 7, the option is called Display / Set custom text size (DPI), for Windows 8 it is called Display / Change the size of all items and for Windows 10 it is Display / Customize your display / Change the size of text, apps, and other items

Linux

You can activate HiDPI-mode for one application by running it with the GDK_SCALE environment variable set to 2, 4, ..., e.g.

GDK_SCALE=2 java -jar josm.jar

Tweaks

Background imagery
By default, the tiles of the background imagery are scaled by the same factor as other GUI elements. This ensures appropriate font size, in case the background imagery contains text and symbols. However, it leads to reduced image resolution.

Under Imagery preferences / Tab Settings / Tiles zoom offset, you can set an offset of 1. This makes JOSM fetch tiles of one zoom level higher and double the image resolution. Currently, this setting only applies to main map area and not the download dialog.

Menu font size
The font size for the main menu can be scaled by a certain factor using the advanced preference value gui.scale.menu.font. It is intended for relatively small adjustments. (JOSM r12923 or later)
Icons sizes
There are advanced options iconsize.* to tweak the default icon sizes. In particular iconsize.smallicon will affect the icons in front of menu items.
HiDPISupport Style
This style scales the drawing of the map area using MapCSS tools. It was created at a time of poor HiDPI support in Java and should only be required in exceptional cases.
Image scaling (deprecated, experimental)
The advanced option gui.scale was used to scale the GUI, basically trying to implement what is now available as Java 9 HiDPI support. It only got as far as scaling images. Further development is not planned as it is obsoleted by the Java 9 features. This option may be removed in a future release of JOSM.
Last modified 4 months ago Last modified on 2017-10-04T21:26:25+02:00