Alisar con líneas y curvas
Cuando utiliza GDI+ para dibujar una línea, proporciona el punto inicial y el punto final de la línea, pero no tiene que suministrar ninguna información sobre los píxeles individuales de la línea. GDI+ funciona junto con el software del controlador de vídeo para determinar qué píxeles se encenderán para mostrar la línea en un dispositivo de presentación determinado.
Aliasing (efecto escalonado)
Piense en la línea recta de color rojo que va del punto (4, 2) al punto (16, 10). Suponga que el sistema de coordenadas tiene su origen en la esquina superior izquierda y que la unidad de medida es el píxel. Suponga también que el eje x apunta hacia la derecha y que el eje y apunta hacia abajo. En la siguiente ilustración se muestra una vista ampliada de la línea roja dibujada sobre un fondo de varios colores.
Los píxeles rojos utilizados para representar la línea son opacos. No existen píxeles parcialmente transparentes en la línea. Este tipo de representación de línea le da a ésta una apariencia escalonada y la línea se asemeja un poco a una escalera. A esta técnica de representación de una línea con una escalera se le denomina "aliasing"; la escalera es un "alias" para la línea teórica.
Suavizado de contorno
Una técnica más sofisticada para la representación de una línea implica el uso de píxeles parcialmente transparentes junto con píxeles opacos. Los píxeles se establecen en rojo puro, o en cierta mezcla de rojo y el color de fondo, dependiendo de lo próximos que estén de la línea. Este tipo de representación se denomina suavizado de contorno y el resultado es una línea que el ojo humano percibe como más regular. En la siguiente ilustración se muestra la forma en que ciertos píxeles se mezclan con el fondo para generar una línea con suavizado de contorno.
El suavizado de contorno puede aplicarse también a curvas. En la siguiente ilustración se muestra una vista ampliada de una elipse suavizada.
En la siguiente ilustración se muestra la misma elipse con su tamaño real, una vez sin suavizado de contorno y otra con él.
Para dibujar líneas y curvas que utilicen suavizado de contorno, cree una instancia de la clase Graphics y establezca su propiedad SmoothingMode en AntiAlias o HighQuality. A continuación, hay que llamar a uno de los métodos de dibujo de la misma clase Graphics.
myGraphics.SmoothingMode = SmoothingMode.AntiAlias
myGraphics.DrawLine(myPen, 0, 0, 12, 8)
myGraphics.SmoothingMode = SmoothingMode.AntiAlias;
myGraphics.DrawLine(myPen, 0, 0, 12, 8);
Vea también
Tareas
Cómo: Utilizar la función de suavizado (anti-aliasing) con texto
Referencia
System.Drawing.Drawing2D.SmoothingMode