J'ai une police à espacement fixe ( PT Mono
) que je préfère utiliser dans la programmation des IDE. La police a seulement Regular
, tous les autres Bold
et Italic
est dérivée par inclinaison et "gras" du Regular
. Le problème est que les caractères "en gras" sont plus larges que les caractères normaux, donc les chaînes de code source dans la fenêtre IDE sont désormais composées de caractères non espacés.
Comment contrôler la "boldification" de la police pour qu'elle ne devienne pas plus large que régulière?
Le problème est illustré sur la capture d'écran ci-dessous ( PT Mono
, pas de gras dédié). Voyez comment les mots «caractère non signé» et «taille de» sortent de leurs positions appropriées.
Voici un autre exemple, Droid Sans Mono
(pas de gras dédié).
Et voici un exemple où la police a une version en gras dédiée ( Liberation Mono
). Gras et régulier sont parfaitement alignés.
Donc, le problème est définitivement dans le rendu frivole de la boldification dans les situations où le gras n'est pas fourni. Le moteur des polices est à blâmer.
UPD: Il existe un fichier /etc/fonts/conf.avail/90-synthetic.conf
qui, s'il est référencé à partir de /etc/fonts/conf.d/
morceaux, le moteur de polices pour effectuer un enhardissement synthétique des polices qui n'ont pas la version en gras. Si le lien symbolique vers ce fichier est supprimé de /etc/fonts/conf.d/
, l'enhardissement disparaît. Ce n'est pas exactement ce que l'on souhaite, mais au moins cela résout le cas des polices monospaces n'étant pas monospace (voir ci-dessous PT Mono
). Le réglage fin de l'enhardissement est toujours souhaité (soit par fichier de configuration, soit par freetype2
patch.
Réponses:
mbaitoff , je poste ceci comme un ajout à votre mise à jour, pas comme une réponse
Si l'utilisateur crée un fichier nommé
~/.fonts.conf
:ensuite, les applications peuvent utiliser une police à espacement gras si disponible, et désactiver la "gras artificiel" si la police utilisée n'a pas de police en gras.
C'est juste une approche alternative et légèrement différente avec un résultat différent
la source
/etc/conf.d/50-user.conf
est renommé pour être exécuté par la suite90-synthetic.conf
, vous n'avez pas à supprimer complètement embolden.99-user.conf
fonctionne bien. Sinon,90-synthetic.conf
réactivez-le.