Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
При использовании GDI+ для рисования линии вы предоставляете начальную точку и конечную точку линии, но вам не нужно предоставлять какие-либо сведения об отдельных пикселях в строке. GDI+ работает вместе с программным обеспечением драйвера дисплея, чтобы определить, какие пиксели будут включаться для отображения строки на определенном устройстве отображения.
Алиасинг
Рассмотрим прямую красную линию, которая идет с точки (4, 2) до точки (16, 10). Предположим, что система координат имеет свой источник в левом верхнем углу и что единица измерения — пиксель. Кроме того, предположим, что ось x направлена вправо и ось y направлена вниз. На следующем рисунке показано увеличенное представление красной линии, рисуемой на многоцветном фоне.
Красные пиксели, используемые для отрисовки линии, непрозрачны. В строке нет частично прозрачных пикселей. Этот тип отрисовки линий придает линии зубчатый внешний вид, и линия похожа на лестницу. Этот метод представления линии в виде лестницы называется алиасингом; лестница является алиасом для теоретической линии.
Сглаживание
Более сложный метод отрисовки линии включает использование частично прозрачных пикселей вместе с непрозрачными пикселями. Пиксели задаются как чистые красные или некоторые сочетания красного и фонового цвета в зависимости от того, насколько близко они находятся на линии. Этот тип отрисовки называется сглаживанием и приводит к линии, которую человеческий глаз воспринимает как более гладкую. На следующем рисунке показано, как определенные пиксели смешиваются с фоном для создания антиалиасной линии.
Антиалиасинг, также называемый сглаживанием, может также быть применён к кривым. На следующем рисунке показано увеличенное представление сглаженного эллипса.
На следующем рисунке показан тот же эллипс в его фактическом размере: один раз без сглаживания и один раз со сглаживанием.
Чтобы нарисовать линии и кривые с использованием сглаживания, создайте экземпляр класса Graphics и установите его свойство SmoothingMode в значение AntiAlias или HighQuality. Затем вызовите один из методов рисования этого же Graphics класса.
myGraphics.SmoothingMode = SmoothingMode.AntiAlias;
myGraphics.DrawLine(myPen, 0, 0, 12, 8);
myGraphics.SmoothingMode = SmoothingMode.AntiAlias
myGraphics.DrawLine(myPen, 0, 0, 12, 8)
См. также
.NET Desktop feedback