Utilisation d’un stylo pour tracer des lignes et des rectangles

Pour dessiner des lignes et des rectangles, vous avez besoin d’un objet Graphics et d’un objet Pen . L’objet Graphics fournit la méthode DrawLine et l’objet Pen stocke les caractéristiques de la ligne, telles que la couleur et la largeur.

L’exemple suivant trace une ligne de (20, 10) à (300, 100). Supposons que les graphiques sont un objet Graphics existant.

Pen pen(Color(255, 0, 0, 0));
graphics.DrawLine(&pen, 20, 10, 300, 100);

La première instruction de code utilise le constructeur de classe Pen pour créer un stylet noir. Le seul argument passé au constructeur Pen est un objet Color . Les valeurs utilisées pour construire l’objet Color (255, 0, 0, 0) correspondent aux composants alpha, rouge, vert et bleu de la couleur. Ces valeurs définissent un stylet noir opaque.

L’exemple suivant dessine un rectangle avec son coin supérieur gauche à (10, 10). Le rectangle a une largeur de 100 et une hauteur de 50. Le deuxième argument passé au constructeur de stylet indique que la largeur du stylet est de 5 pixels.

Pen blackPen(Color(255, 0, 0, 0), 5);
stat = graphics.DrawRectangle(&blackPen, 10, 10, 100, 50);

Lorsque le rectangle est dessiné, le stylet est centré sur la limite du rectangle. Étant donné que la largeur du stylet est de 5, les côtés du rectangle sont dessinés de 5 pixels de large, de sorte que 1 pixel est dessiné sur la limite elle-même, 2 pixels sont dessinés à l’intérieur et 2 pixels sont dessinés à l’extérieur. Pour plus d’informations sur l’alignement du stylet, consultez Définition de la largeur et de l’alignement du stylet.

L’illustration suivante montre le rectangle résultant. Les lignes en pointillés indiquent où le rectangle aurait été dessiné si la largeur du stylet avait été d’un pixel. La vue agrandie du coin supérieur gauche du rectangle montre que les lignes noires épaisses sont centrées sur ces lignes en pointillés.

illustration d’un rectangle dessiné avec une ligne noire épaisse qui entoure une ligne fine, grise et pointillée