HiDPI Support – Overview

This page contains information on how to optimize the JOSM interface for a high-resolution display. The similar named HiDPI Support mappaint style is for exceptional cases only.


  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.


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


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


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 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 2 weeks ago Last modified on 2018-03-04T00:30:37+01:00