Артефакты сглаживания

Когда мы хотим визуализировать векторное изображение, нам приходится превращать его в растр - то есть в изображение пиксельное. На экране - пиксели, при экспорте джпегов, пнг и тифов - тоже пиксели. Этот процесс имеет некоторые особенности.

Сглаживание (anti-aliasing)

По сути, при растрировании, векторная программа накладывает на рабочее пространство сетку, соответствующую пикселям будущего растрового изображения, с заданным разрешением. И для каждой ячейки этой сетки выясняется доминирующий цвет - он и становится цветом пикселя. Но это упрощённый подход, без сглаживания, при котором у объектов визуально получаются рваные края и зазубрины.

Чтобы изображение выглядело более мягко и переходы между границами были более плавными, используются всякие алгоритмы сглаживания. Общий смысл этих алгоритмов сводится к тому, что цвет пикселя начинается зависеть от цвета соседних пикселей - он как бы размывается. В основном это даёт приятный эффект. Недостаток в том, что вертикальные и горизонтальные линии объектов, которые проходят не чётко по границам пикселей - то есть почти всегда - "размазываются" на соседние пиксели, становятся размытыми:
anti-aliased-edges-1.png

Object hinting

Один из способов избавиться от артефактов сглаживания на краях в кореле - это задание свойства Object hinting (в русском переводе оно называется "подсказки к объектам" - ошибка перевода, кочующая от версии к версии). Вертикальные и горизонтальные края объектов с таким свойством корел начинает укладывать чётко в границы между пикселями. Эффект этот - чисто визуальный, на самом деле объект не перемещается и не изменяется:
object-hinting-property-1.png

Свойство это работает при любом растрировании: как на экране, так и при растрировании в документе, так и при растрировании при экспорте. Его удобно применять для объектов размером значительно больше размера самой растровой сетки, например для фоновых заливок. Маленькие объекты при привязке к сетке слишком заметно изменятся в размере:

object-hinting-small-1.png

Материалы