Java Runtime Environment fonts (Русский)

Некоторые пользователи могут заметить, что шрифты в приложениях Java отображаются неприятно. Доступно несколько методов, чтобы улучшить отображение шрифтов в приложениях, работающих с Java Runtime Environment (JRE). Эти методы могут использоваться по отдельности, но многие пользователи предпочтут использовать их вместе, чтобы получить лучший результат.

Состояние перевода: На этой странице представлен перевод статьи Java Runtime Environment fonts. Дата последней синхронизации: 25 апреля 2019. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Для использования с Java лучшим поддерживаемым форматом шрифтов будет TrueType.

Anti-aliasing (Сглаживание)

Запуск демона xsettings

Java устанавливает свои настройки по умолчанию при помощи xsettings. В GNOME автоматически работает демон gnome-settings-daemon, но в качестве альтернативы можно использовать утилиту Xsettingsd.

Базовые настройки

Сглаживание доступно с версии Java 1.6. Чтобы активировать его для всей системы, добавьте следующую строку в /etc/environment:

_JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=setting'

Где setting это одно из значений:

Установка Описание
off, , Без сглаживания
Полное сглаживание
Использовать встроенные в шрифт инструкции хинтинга
lcd, Сглаживание настроенное для большинства популярных ЖК-мониторов
lcd_hbgr, , Альтернативные настройки для ЖК-мониторов

Параметры и lcd в большинстве случаев хорошо работают.

Чтобы приложения Java ощущались и выглядели как приложения, использующие GTK, используйте следующую строку:

_JAVA_OPTIONS='-Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel'

Чтобы изменения вступили в силу, требуется выполнить перелогин, но можно указать переменную в командной строке перед выполнением, чтобы попробовать новую настройку сразу:

_JAVA_OPTIONS=настройка java Main

Патч OpenJDK

В результате сглаживание может выглядеть хуже нативных приложений, даже с опциями, но это может быть исправлено с помощью патча в OpenJRE, доступному в AUR:

  • Исправленный OpenJRE 7 доступен как ; используется с ключом
  • Исправленный OpenJRE 8 доступен как

Исправленные версии хорошо сочетаются с патчами fontconfig и freetype, однако стоит заметить, что используют только API от fontconfig.

Выбор шрифта

Шрифты TrueType

Некоторые приложения Java могут требовать определенного шрифта TrueType. Эти приложения должны быть в курсе пути каталога с нужным шрифтом. TrueType шрифты устанавливаются в каталог . Добавьте следующую строку в /etc/environment чтобы включить эти шрифты в приложениях.

JAVA_FONTS=/usr/share/fonts/TTF

Перелогинтесь, чтобы изменения вступили в силу.

Исправление Mojibake (для JRE8)

Поместите файлы шрифтов в подкаталог. Создайте каталог, если он не существует.

$JAVA_HOME/jre/lib/fonts/fallback/

Этот функционал удалён начиная с Oracle JDK 9, так как Oracle посчитала это ошибкой, заставляющей пользователей перемещать каталог lib, и поэтому переместила эти файлы в каталог conf, назвав поведение до этого ошибочным. Вместо этого следует использовать вызов sun.awt.FontConfiguration.getInstalledFallbackFonts(), что заставит Java всегда добавлять шрифты оттуда в качестве запасной последовательности глифов — то есть не зависимо, какие шрифты запрашивает приложение, недостающие глифы этих шрифтов берутся из указанной директории.

Смотрите также

gollark: <@214175690793287680> ENABLEREACTIONSTO<#389383627739234305>
gollark: ™
gollark: You can just download i.osmarks.tk.
gollark: Also ale, try the search again, I put in esolangs.org.
gollark: *Manually*, like someone from the 18th century?
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.