Подтвердить что ты не робот

Сглаживание шрифтов Intellij IDEA в Linux

Я использую IntelliJ IDEA на Arch Linux с KDE. Версия OpenJDK - 1.7.0_40.

Все IDE-шрифты (включая редактор кода) отображаются без сглаживания и сглаживания шрифтов. Я установил в idea.properties файл idea.use.default.antialiasing.in.editor в true и добавил в _JAVA_OPTIONS переменную -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true без какого-либо эффекта.

Что еще я могу попробовать включить сглаживание шрифтов?

4b9b3361

Ответ 1

Посмотрите здесь. Я помню, что у меня такая же проблема при запуске IDEA, но после добавления строки, упомянутой в вики, проблема исчезает.

export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=setting' где setting может быть

  • off или false или default - нет сглаживания
  • on - Полное сглаживание
  • gasp - Используйте встроенные подсказки для шрифтов.
  • lcd или lcd_hrgb - Сглаживание, настроенное для многих популярных ЖК-мониторов.
  • lcd_hbgr - Альтернативная настройка ЖК-монитора
  • lcd_vrgb - Альтернативная настройка ЖК-монитора
  • lcd_vbgr - Альтернативная настройка ЖК-монитора

Ответ 2

Я нашел другое решение здесь. Он работает для Oracle JDK, но это может быть полезно для людей, спотыкающихся об этом вопросе. Вы должны отредактировать файл .vmoptions (в моем случае это idea64.vmoptions от /bin). Добавьте эти три строки:

-Dawt.useSystemAAFontSettings=on
-Dswing.aatext=true
-Dsun.java2d.xrender=true

Если вы столкнулись с проблемами, вы можете удалить последнюю строку. Вы можете протестировать разные версии для первой настройки (получить параметры из поста выше).

Кроме того, вы можете отредактировать шрифт, который вы используете, и дать четкую подсказку (автор сообщения предлагает использовать FontForge). Я не нашел это необходимым.

Ответ 3

Ни один из этих уродливых вещей больше не нужен. Загрузите последнюю версию IntelliJ (2016.1) для Linux. Он включает модифицированную JRE с исправленной проблемой шрифтов. Чтобы исправить Android Studio тоже сделать символическую ссылку на IntelliJ jre:

ln -s /PATH/TO/INTELLIJ/jre /PATH/TO/ANDROIDSTUDIO/jre

В качестве альтернативы просто откройте свой файловый менеджер как root (при условии, что ваши IDE установлены в каталоге /opt или другой системной папке) и создайте ярлык для IntelliJ jre и переместите его в папку установки Android Studio, а затем переименуйте его в 'jre ". Это работает для последней студии Android 2.0, но она также должна работать с более ранними версиями.

Android Studio теперь поставляется с модифицированной JRE, поэтому символическая ссылка больше не нужна, просто загрузите последнюю версию.

Ответ 4

Как уже упоминалось, это ошибка в JDK. Хорошей новостью является наличие патча для OpenJDK, что значительно улучшает рендеринг шрифтов для IntelliJ на Linux, и приносит качество шрифта в соответствии с тем, что я Я видел на своем Mac.

(Чтобы быть ясным, это значительно лучше, чем то, что можно получить путем настройки idea.properties.)

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

Ubuntu PPA https://launchpad.net/~no1wantdthisname/+archive/openjdk-fontfix

Arch AUR: https://aur.archlinux.org/packages/jre7-openjdk-headless-fontfix/
(Я запускаю Ubuntu/Elementary OS, поэтому я не могу ручаться за это лично)

Ответ 5

Он не будет работать с OpenJDK, даже с любым _JAVA_OPTIONS, который вы выберете, поэтому удалите его с помощью sudo pacman -Rndd jdk7-openjdk jre7-openjdk jre7-openjdk-headless java-rhino и установите Oracle JDK 8 из Aur. После установки вам нужно выйти/войти, чтобы обновить переменные среды java (f.e. JAVA_HOME). Voila, рендеринг шрифтов в порядке.

Наслаждайтесь!

PS: pacman -Rndd удаляется без зависимостей, но с конфигурационными файлами, расширенными: pacman --remove --nosave --nodeps --nodeps.

IntelliJ Idea Community Edition 13.1.2 with Oracle JDK8 on Arch Linux

Ответ 6

Это известная ошибка в OpenJDK. Я не думаю, что какое-то количество настроек поможет вам исправить это, это может сделать его немного лучше, но рендеринг шрифтов нарушен в OpenJDK.

Самое больное исправление IMHO - это перейти в AUR и установить jdk7-compat, который предназначен для запуска рядом с вашим обычным JDK.

Не беспокойтесь, если вы никогда не использовали AUR, это действительно прямо. В основном, вы делаете

  • убедитесь, что у вас установлен базовый уровень с pacman -S base-devel
  • загрузите tar с страницы AUR, которую я связал выше, распакуйте ее.
  • запустите 'makepkg -di' в папке, где вы не сжали

и его сделано. Теперь отредактируйте /usr/share/intellijidea -ce/bin/idea.sh и измените строку, которая выполняет программу (ее в нижней части файла), поэтому она выглядит как

eval "/opt/java7/bin/java" $ALL_JVM_ARGS -Djb.restart.code=88 $MAIN_CLASS_NAME "[email protected]"

Это заставит intelliJ запускаться в ORACLE JVM, а не в OpenJDK, который исправляет проблемы шрифта вместе.

Ответ 7

В /usr/share/intellijidea-ce/bin/idea.sh: отредактируйте эту строку:

ALL_JVM_ARGS="$VM_OPTIONS $COMMON_JVM_ARGS $IDE_JVM_ARGS $AGENT $REQUIRED_JVM_ARGS"

и сделайте так:

ALL_JVM_ARGS="$VM_OPTIONS $COMMON_JVM_ARGS $IDE_JVM_ARGS $AGENT $REQUIRED_JVM_ARGS -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true"