Я обычно предпочитаю Adobe Reader (все еще v9 в Linux) всем другим программам просмотра PDF, потому что я думаю, что он имеет лучшее качество рендеринга, хотя в последнее время другие догоняли его. Это качество рендеринга, по-видимому, во многом благодаря CoolType, реализации Adobe субпиксельного рендеринга. К сожалению, я обнаружил, что Adobe Reader последовательно отключает субпиксельный рендеринг (для каждой страницы), как только страница содержит прозрачные элементы. Пример:
Синяя фигура непрозрачна, текст отображается с использованием субпикселей:
Синяя фигура прозрачна на 50%, текст отображается стандартным сглаживанием:
Два соответствующих файла pdf были сгенерированы абсолютно одинаково (с использованием TikZ / PGF с pdflatex), за исключением указания прозрачности во втором случае. Я сделал эти PDF-файлы сам, но я часто наблюдал тот же эффект с PDF-файлами из совершенно разных источников. Как ни странно, Foxit Reader и Okular отрисовывают одинаковые два файла PDF абсолютно одинаковым образом (за исключением, конечно, самой прозрачной части), но с качеством IMHO в целом хуже.
Мой вопрос: знает ли кто-нибудь, почему это происходит, и можно ли / как этого избежать?
источник
Ответы:
Субпиксельная визуализация выполняется с использованием отдельных цветов пикселя. Каждый пиксель на экране состоит из еще меньшего пикселя с цветом красного, зеленого и синего.
Если вы хотите визуализировать объект шириной 10,3 пикселя, вы должны использовать только красный цвет 11-го пикселя. Затем экран будет излучать свет из 31 субпикселя, то есть 10 полных пикселей, а затем треть пикселя.
Если вы попытаетесь смоделировать этот эффект самостоятельно, просто нарисовав 10 белых пикселей шириной, а затем красный пиксель справа на черном фоне, вы увидите эффект сами.
Проблема в том, что вы заметите, что правый край будет красным, если вы просто сделаете это таким образом. Скорее всего, Adobe должна использовать продвинутые алгоритмы, чтобы нейтрализовать этот эффект - возможно, путем усиления значения красного и зеленого 10-го пикселя.
Добавление прозрачности в уже достаточно продвинутый алгоритм, вероятно, еще не решено, и поэтому они просто отключают субпиксельный рендеринг.
Я полагаю, что это так, потому что я пытался реализовать субпиксельный рендеринг таким наивным способом и сам видел эффект «цветной стороны».
источник
Это может быть ошибкой в Adobe, лучше поднятой на их форумах.
Чтобы улучшить отображение шрифтов в Linux, вы можете попробовать использовать Infinality:
Видеть :
Лучший рендеринг шрифтов в Linux с Infinality
archlinux Настройка шрифтов - Infinality .
источник