2013-06-27 2 views
24

Я использую IntelliJ IDEA на Arch Linux с KDE. Версия OpenJDK - 1.7.0_40.Сглаживание шрифтов Intellij IDEA в Linux

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

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

ответ

21

Take a look here. Я помню, что у меня такая же проблема при запуске IDEA, но после добавления строки, упомянутой в вики, проблема уходит.

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

  • off или false или default - Нет анти-не альясинг
  • on - Полное сглаживанием
  • gasp - Используйте шрифт встроенного намекая инструкцию
  • lcd или lcd_hrgb - Сглаживание настроено для человека у популярной LCD мониторы
  • lcd_hbgr - альтернативный ЖК-монитор настройка
  • lcd_vrgb - Alternative LCD монитор установка
  • lcd_vbgr - настройка Alternative LCD монитор
+0

спасибо, но все эти я уже пробовал ... – InsidE

+0

хорошо, у вас есть проблема только с IDEA или она появляется в других приложениях? – lynnard

+0

извините за ответ на такой поздний ... только в идее intellij, другие приложения, inlcude те, кто использует java, такие как pycharm works normal – InsidE

15

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

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

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

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

1

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

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

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

  1. застраховать у вас есть базовый разви установлен с pacman -S base-devel
  2. скачать ТДО со страницы AUR я связан выше, разархивируйте его.
  3. беги «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, который исправляет проблемы шрифта вместе.

0

В /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" 
4

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

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

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

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

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

3

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

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

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

IntelliJ Idea Community Edition 13.1.2 with Oracle JDK8 on Arch Linux

+0

Определенно более простой вариант. Не нужно устанавливать дополнительные env vars, и это работает из коробки. Кроме того, даже настройка параметров не исправила это для меня. – alfetopito

5

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

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

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

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

+0

v2016, похоже, не улучшает рендеринг шрифтов для меня. – seriousdev

+2

@seriousdev убедитесь, что вы используете немодифицированную установку IntelliJ. Шрифт был фактическим изменением, которое они сделали. Это сделало все для меня намного лучше. –

+1

Действительно, используйте JRE, поставляемый JetBrains. Загрузите IntelliJ прямо с сайта JetBrains или используйте 'pacman' для установки IntelliJ, а затем добавьте JRE из JetBrains в каталог установки. –