#phpstorm
#phpstorm
Вопрос:
Так устал искать решение.. Я использую PhpStorm IDE для своих php-проектов, и одна проблема просто сводит меня с ума. Шрифты редактора (редактор, не заботящийся об интерфейсе) выглядят ужасно. Я пробовал использовать разные дистрибутивы и разные DE, но результат всегда один и тот же : ( Есть скриншоты для сравнения шрифтов Kate и PhpStorm. Я знаю, что PhpStorm — это JAVA-приложение, и оно использует другой движок поиска шрифтов, но.. Eclipse — это тоже JAVA-приложение, но с довольно приятными шрифтами. Шрифты PhpStorm как в Windows, так и в OSX выглядят как другие системные шрифты. Плавные и читаемые.
Есть ли способ исправить эту проблему со шрифтом, прежде чем мои глаза взорвутся ..? Спасибо.
Комментарии:
1. Хм. Второй скриншот после загрузки по некоторым причинам стал более гладким, чем оригинал. Но я думаю, что моя проблема понятна для людей, у которых такая же проблема.
2. Я заметил, что NetBeans 7 в Linux имеет ту же проблему с отображением шрифтов: (
Ответ №1:
После проблемы с PhpStorm, вот что я добавил в phpstorm64.vmoptions
(что я установил в /usr/local/bin/PhpStorm/bin/
):
-Dswing.aatext=true
-Dawt.useSystemAAFontSettings=gasp
-Dsun.java2d.xrender=true
Я также проделал трюк с открытием шрифта в FontForge:
- Ctrl A (выберите все символы)
- Подсказки -> Очистить подсказки
- Подсказки -> Четкие инструкции
- Файл -> Создать шрифт
Я поместил это в ~/fonts/
Я использую Ubuntu 12.10, и после всего этого все выглядит довольно великолепно (я сделал это для Ubuntu Mono).
Единственная проблема, которую я заметил, заключается в том, что -Dawt.useSystemAAFontSettings=gasp
это приводит к отличному отображению шрифтов в редакторе, но плохому отображению меню и других элементов. В то время как -Dawt.useSystemAAFontSettings=lcd
обеспечивает отличную визуализацию шрифтов для меню, но менее качественную визуализацию шрифтов в редакторе. Итак, попробуйте оба варианта и выберите тот, который вам больше нравится.
Обновление: в Ubuntu 13.10 у меня больше нет проблем.
Комментарии:
1. -Dsun.java2d.xrender= true приводит к исчезновению некоторых символов, но первый и второй варианты сделали свое дело! 🙂
2. Обновление: В Ubuntu 13.04 рендеринг шрифтов кажется нормальным, я ничего не редактировал.
3. Потрясающее решение, большое спасибо! (первая часть, вторую часть я не пробовал)
4. В 64-разрядной версии fedora 20 у меня были лучшие результаты с этой конфигурацией: -Dswing.aatext= true -Dawt.useSystemAAFontSettings=вкл.
5. В Ubuntu 15.04 он работает с OpenJDK с исправлением шрифта github.com/achaphiv/ppa-fonts/blob/master/openjdk-fontfix / … вместо Oracle JDK, по крайней мере, в моей среде. Мне не нужно было выполнять часть FontForge.
Ответ №2:
Это специфическая проблема Linux, вы можете найти много информации об этой проблеме здесь. Проверьте комментарии на наличие различных предложений и обходных путей.
Вот что вы можете получить, используя просто другой шрифт:
Комментарии:
1. Спасибо. Я не нашел решения для себя. Но теперь я знаю причину, почему это произошло.
Ответ №3:
Вы можете установить исправления infinality и OpenJDK, чтобы заставить его использовать freetype для рендеринга шрифтов.
Вот ссылки об установке infinality и исправленного OpenJDK для дистрибутивов на базе Ubuntu:
http://www.webupd8.org/2013/06/better-font-rendering-in-linux-with.html
http://www.webupd8.org/2013/06/install-openjdk-patched-with-font-fixes.html
И вот мой скриншот PhpStorm, работающего на Fedora 20 с infinality и исправленным OpenJDK:
Комментарии:
1. Выглядит великолепно. AFAIK, OpenJDK не был рекомендован для использования с PhpStorm. JetBrains настоятельно рекомендует использовать Oracle Java. Теперь IDE нормально работает с OpenJDK?
2. @YaroslavRogoza У меня нет ни проблем с производительностью, ни каких-либо графических проблем или сбоев при запуске PhpStorm на OpenJDK.
3. Это реальный ответ. После долгой возни с опциями JVM без особой удачи исправленный OpenJDKнаконец-то выполнил свою работу. Рендеринг значительно улучшился!
Ответ №4:
Попробуйте добавить -Dawt.useSystemAAFontSettings=lcd в bin/phpstorm.vmoptions
Комментарии:
1. возможно, вы захотите попробовать также -Dswing.aatext=true и -Dawt.useSystemAAFontSettings=вкл.
2. Эти два варианта вместе имеют для меня заметное значение. Могло бы быть лучше, но сейчас это терпимо.
Ответ №5:
Попробуйте Настройки -> Редактор -> Внешний вид -> Использовать сглаженный шрифт
Комментарии:
1. Попробуйте отключить его или использовать другой шрифт. Существуют шрифты, которые выглядят некорректно при включенном сглаживании.
2. Спасибо. Я пробовал это с разными шрифтами с AA и без них, все они выглядят неприятно.
Ответ №6:
Лучшее решение, которое я нашел, — это использовать FontForge. FontForge — это приложение для Linux, которое позволяет редактировать некоторые настройки шрифта. Просто откройте шрифт ttf в приложении. Нажмите ctrl a, чтобы выделить все символы. Затем выберите в меню Подсказки -> Очистить подсказки. Затем Подсказки -> Четкие инструкции. И последний файл -> Создать шрифты. Просто сохраните новый шрифт как новый или замените существующий и попробуйте использовать этот шрифт с PhpStorm. Выглядит не идеально, но намного лучше, чем раньше.
Ответ №7:
Также я заметил, что шрифты на темном фоне довольно хорошо смотрятся в Linux
Ответ №8:
Сравнивая NetBeans и PhpStorm бок о бок в моем Debian-Squeeze box, я обнаружил, что NetBeans выглядел намного лучше, даже когда был выбран тот же шрифт и размер шрифта. Разница заключалась в том, что PhpStorm выделил большую часть кода жирным шрифтом. После настройки редактора и удаления всех выделений жирным шрифтом редактор теперь выглядит намного лучше.
Ответ №9:
Моноширинный формат со сглаживанием, на мой взгляд, хорошо подходит для WebStorm.
Комментарии:
1. «Выглядит хорошо», это довольно субъективный факт 🙂 Несколько скриншотов внесут некоторую ясность