web-dev-qa-db-fra.com

Intellij IDEA lissage des polices sous linux

J'utilise IntelliJ IDEA sur Arch Linux avec KDE. La version d'OpenJDK est 1.7.0_40.

Les polices entières IDE (y compris l'éditeur de code) sont rendues sans antialiasing ni lissage de police. J'ai défini dans idea.properties le fichier idea.use.default.antialiasing.in.editor sur true et ajouté dans _Java_OPTIONS variable -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true sans aucun effet. 

Quoi d'autre puis-je essayer d'activer le lissage des polices?

25
InsidE

Jetez un oeil ici . Je me souviens avoir eu le même problème lors de l'exécution d'IDEA, mais après avoir ajouté la ligne mentionnée dans le wiki, le problème disparaît.

export _Java_OPTIONS='-Dawt.useSystemAAFontSettings=setting'setting peut être

  • off ou false ou default - Pas d'anti-aliasing
  • on - Anti-aliasing complet
  • gasp - Utilisez les instructions de conseil intégrées à la police.
  • lcd ou lcd_hrgb - Anti-aliasing réglé pour de nombreux moniteurs LCD populaires
  • lcd_hbgr - Autre réglage du moniteur LCD
  • lcd_vrgb - Autre réglage du moniteur LCD
  • lcd_vbgr - Autre réglage du moniteur LCD
23
lynnard

J'ai trouvé une autre solution ici . Cela fonctionne pour le JDK Oracle, mais cela peut être utile pour les personnes qui tombent sur cette question. Vous devez éditer le fichier .vmoptions (dans mon cas, c'est idea64.vmoptions à partir de /bin). Ajoutez ces trois lignes:

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

Si vous rencontrez des problèmes, vous pouvez supprimer la dernière ligne. Vous pouvez tester différentes versions pour le premier réglage (obtenez les options de l'article ci-dessus).

En outre, vous pouvez modifier la police que vous utilisez et effacer les suggestions (l'auteur du message suggère d'utiliser FontForge). Je n'ai pas trouvé cela nécessaire.

16
Corneliu Dascălu

Aucune de ces choses laides n'est plus nécessaire. Téléchargez la dernière version d'IntelliJ (2016.1) pour Linux. Il inclut un JRE modifié avec le problème des polices corrigé. Pour réparer également Android Studio, faites également un lien symbolique vers l’IntelliJ jre:

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

Ou bien, ouvrez simplement votre gestionnaire de fichiers en tant que root (en supposant que vos IDE sont installés dans le répertoire/opt ou un autre dossier système) et créez un raccourci vers le fichier jre d'IntelliJ et déplacez-le dans le dossier d'installation d'Android Studio, puis renommez-le en "jre". Cela fonctionne pour le dernier studio Android 2.0, mais il devrait également fonctionner avec les versions antérieures. </ Strike>

Android Studio est maintenant livré avec le JRE modifié, vous n'avez donc plus besoin du lien symbolique; il vous suffit de télécharger la dernière version.

5
Aspiring Dev

Comme mentionné, il s'agit d'un bogue dans le JDK. La bonne nouvelle est qu’il existe un patch pour OpenJDK qui améliore considérablement le rendu des polices pour IntelliJ sous Linux et aligne la qualité de la police sur celle de mon Mac.

(Pour être clair, ceci est nettement meilleur que ce que l'on peut obtenir en peaufinant idea.properties.)

Pour l'installer, utilisez les packages ci-dessous:

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

Arch AUR: _ ​​ https://aur.archlinux.org/packages/jre7-openjdk-headless-fontfix/ _
(J'utilise Ubuntu/Elementary OS, je ne peux donc pas me porter garant pour celui-ci personnellement)

4
Trevor Johns

Cela ne fonctionnera pas avec OpenJDK, même avec le code _Java_OPTIONS choisi. Supprimez-le avec Sudo pacman -Rndd jdk7-openjdk jre7-openjdk jre7-openjdk-headless Java-rhino et installez le JDK Oracle 8 à partir de Aur . Après l’installation, vous devez vous déconnecter/vous connecter pour mettre à jour vos variables d’environnement Java (par exemple Java_HOME). Voilà, le rendu des polices est correct.

Prendre plaisir!

PS: pacman -Rndd supprime sans dépendances mais avec les fichiers de configuration, développé: pacman --remove --nosave --nodeps --nodeps.

IntelliJ Idea Community Edition 13.1.2 with Oracle JDK8 on Arch Linux

3
klingt.net

Ceci s'applique à IntelliJ IDEA 2018

La meilleure solution consiste à télécharger la version avec le Java Runtime inclus . Cette version s'exécute sur un JRE personnalisé corrigé afin de mieux gérer les polices sous Linux.

IntelliJ IDEA propose 2 versions pour le système d’exploitation Linux, l’une avec un JRE intégré (téléchargement par défaut), tandis que l’autre version n’en possède pas et dépend de l’installation Java de l’utilisateur.

Si vous ne souhaitez pas réinstaller IntelliJ, il existe une autre solution:

  1. Téléchargez et extrayez this JRE
  2. Passez à elle
  3. ajoutez -Djava2d.font.loadFontConf=false aux deux fichiers idea.vmoptions _ et idea64.vmoptions} situés sous dossier_installation_du_principe_intelli/ bin /

N.B. Le résultat de la première solution était un peu plus agréable à regarder quand je les ai essayés.

_ {En ce qui concerne mes tests} _ la @Corneliu Dascălu la solution mentionnée ici ne fonctionne plus sous IntelliJ 2018.

2
Maged

Ceci est un bogue connu dans OpenJDK. Je ne pense pas que le moindre ajustement puisse résoudre ce problème pour vous, cela pourrait l'améliorer un peu, mais le rendu de la police est cassé dans OpenJDK.

Le correctif le plus simple à mon humble avis, consiste à accéder à l’AUR et à installer jdk7-compat , qui est conçu pour fonctionner à côté de votre JDK normal.

Ne vous inquiétez pas si vous n’avez jamais utilisé l’AUR, c’est vraiment simple. Fondamentalement, ce que vous faites est

  1. assurez-vous que vous avez installé base-devel avec pacman -S base-devel
  2. téléchargez le fichier tar à partir de la page AUR que j'ai liée ci-dessus, décompressez-le.
  3. exécutez 'makepkg -di' dans le dossier où vous avez décompressé

et c'est fait. Maintenant, éditez le fichier /usr/share/intellijidea-ce/bin/idea.sh et changez la ligne qui exécute le programme (en bas du fichier) afin que cela ressemble à ceci

eval "/opt/Java7/bin/Java" $ALL_JVM_ARGS -Djb.restart.code=88 $MAIN_CLASS_NAME "$@"

Ainsi, intelliJ sera exécuté sur la machine virtuelle Oracle plutôt que sur OpenJDK, ce qui résout tous les problèmes de polices. 

1
JustDanyul

Dans /usr/share/intellijidea-ce/bin/idea.sh:.__, éditez cette ligne:

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

et le faire comme ça:

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