Partager via


Définition de la largeur et de l’alignement du stylet

Lorsque vous créez un objet Pen , vous pouvez fournir la largeur du stylet comme l’un des arguments au constructeur. Vous pouvez également modifier la largeur du stylet à l’aide de la méthode Pen::SetWidth .

Une ligne théorique a une largeur de zéro. Lorsque vous dessinez une ligne, les pixels sont centrés sur la ligne théorique. L’exemple suivant dessine deux fois une ligne spécifiée : une fois avec un stylet noir de largeur 1 et une fois avec un stylet vert de largeur 10.

Pen blackPen(Color(255, 0, 0, 0), 1);
Pen greenPen(Color(255, 0, 255, 0), 10);
stat = greenPen.SetAlignment(PenAlignmentCenter);

// Draw the line with the wide green pen.
stat = graphics.DrawLine(&greenPen, 10, 100, 100, 50);

// Draw the same line with the thin black pen.
stat = graphics.DrawLine(&blackPen, 10, 100, 100, 50);

L’illustration suivante montre la sortie du code précédent. Les pixels verts et noirs sont centrés sur la ligne théorique.

illustration montrant une ligne fine, diagonale et noire entourée d’une large ligne verte

L’exemple suivant dessine deux fois un rectangle spécifié : une fois avec un stylet noir de largeur 1 et une fois avec un stylet vert de largeur 10. Le code passe la valeur PenAlignmentCenter (un élément de l’énumération PenAlignment ) à la méthode Pen::SetAlignment pour spécifier que les pixels dessinés avec le stylet vert sont centrés sur la limite du rectangle.

Pen blackPen(Color(255, 0, 0, 0), 1);
Pen greenPen(Color(255, 0, 255, 0), 10);
stat = greenPen.SetAlignment(PenAlignmentCenter);

// Draw the rectangle with the wide green pen.
stat = graphics.DrawRectangle(&greenPen, 10, 100, 50, 50);

// Draw the same rectangle with the thin black pen.
stat = graphics.DrawRectangle(&blackPen, 10, 100, 50, 50);

L’illustration suivante montre la sortie du code précédent. Les pixels verts sont centrés sur le rectangle théorique, qui est représenté par les pixels noirs.

illustration montrant une fine ligne noire dans la forme d’un rectangle, entourée d’une ligne verte plus large

Vous pouvez modifier l’alignement du stylet vert en modifiant la troisième instruction de l’exemple précédent comme suit :

stat = greenPen.SetAlignment(PenAlignmentInset);

Maintenant, les pixels de la ligne verte large apparaissent à l’intérieur du rectangle, comme illustré dans l’illustration suivante.

illustration montrant une fine ligne noire dans la forme d’un rectange, entourant une large ligne verte de la même forme