Как найти реальную плотность отображения (DPI) из кода Java?

Я собираюсь сделать некоторые вещи низкоуровневого рендеринга, но мне нужно знать реальный DPI дисплея для создания всего правильного размера.

Я нашел один способ сделать это:java.awt.Toolkit.getDefaultToolkit().getScreenResolution() - но он возвращает неверный результат на OS X с отображением «сетчатки», это 1/2 реального DPI. (В моем случае это должно быть 220, но это 110)

Так что либо другой, более правильный API должен быть доступен, либо, в качестве альтернативы, мне нужно реализовать хак только для OS X - каким-то образом определить, является ли текущее отображение «сетчаткой». Но я не мог найти способ запросить эту информацию тоже. Там вэтот ответ но на моей машинеToolkit.getDefaultToolkit().getDesktopProperty("apple.awt.contentScaleFactor") просто возвращает ноль.

Как мне это сделать?

Ответы на вопрос(2)

Ваш ответ на вопрос