Je préfère normalement Adobe Reader (toujours v9 sous Linux) à tous les autres visualiseurs PDF car je pense qu'il a la meilleure qualité de rendu, même si d'autres ont rattrapé leur retard ces derniers temps. Cette qualité de rendu semble être en grande partie due à CoolType, l'implémentation par Adobe du rendu sous-pixel. Malheureusement, j'ai constaté qu'Adobe Reader désactive systématiquement le rendu des sous-pixels (sur une base par page) dès que la page contient des éléments transparents. Un exemple:
La forme bleue est opaque, le texte est rendu en utilisant des sous-pixels:
La forme bleue est transparente à 50%, le texte est rendu avec l'anticrénelage standard:
Les deux fichiers pdf correspondants ont été générés exactement de la même manière (en utilisant TikZ / PGF avec pdflatex), sauf pour spécifier la transparence dans le second cas. J'ai créé ces fichiers PDF moi-même, mais j'ai souvent observé le même effet avec des fichiers PDF provenant de sources complètement différentes. Étrangement, Foxit Reader et Okular rendent les deux mêmes fichiers PDF de manière exactement identique (sauf bien sûr pour la partie transparente elle-même), mais à une IMHO de qualité généralement pire.
Ma question: quelqu'un sait-il pourquoi cela se produit et si / comment cela peut être évité?
la source
Réponses:
Le rendu des sous-pixels se fait en utilisant les couleurs individuelles d'un pixel. Chaque pixel sur un écran est composé d'un pixel encore plus petit avec la couleur du rouge, du vert et du bleu.
Si vous souhaitez rendre un objet d'une largeur de 10,3 pixels, vous utiliserez uniquement la couleur rouge du 11e pixel. L'écran émettrait alors de la lumière à partir de 31 sous-pixels, soit 10 pixels pleins puis un tiers de pixel.
Si vous essayez de simuler cet effet vous-même, en dessinant simplement 10 pixels blancs de large, puis un pixel rouge à droite sur un fond noir, vous verriez l'effet vous-même.
Le problème est que vous remarquerez que le bord droit serait rouge, ceci si vous le faites simplement de cette façon. Très probablement, Adobe doit utiliser des algorithmes avancés pour annuler cet effet - éventuellement en amplifiant la valeur du rouge et du vert du 10e pixel.
Ajouter de la transparence à un algorithme déjà assez avancé est probablement quelque chose qu'ils n'ont pas encore résolu et, par conséquent, ils désactivent simplement le rendu sous-pixel.
Je crois que c'est le cas, parce que j'ai essayé d'implémenter le rendu sous-pixel de cette manière naïve et j'ai vu cet effet "côté coloré" moi-même.
la source
Cela peut être un bug d'Adobe, mieux évoqué dans leurs forums.
Pour améliorer l'affichage des polices sous Linux, vous pouvez essayer d'utiliser Infinality:
Voir:
Meilleur rendu des polices sous Linux avec Infinality
Configuration des polices archlinux - Infinality .
la source