Partager via


Stylets, lignes et rectangles dans GDI+

Mise à jour : novembre 2007

Pour dessiner des lignes avec GDI+, vous devez créer un objet Graphics et un objet Pen. L'objet Graphics fournit les méthodes qui effectuent réellement le dessin et l'objet Pen stocke des attributs, tels que la couleur, la largeur et le style de ligne.

Dessin d'une ligne

Pour dessiner une ligne, appelez la méthode DrawLine de l'objet Graphics. L'objet Pen est passé à la méthode DrawLine en tant qu'argument. L'exemple suivant dessine une ligne qui va du point (4, 2) au point (12, 6) :

myGraphics.DrawLine(myPen, 4, 2, 12, 6)

myGraphics.DrawLine(myPen, 4, 2, 12, 6);

DrawLine est une méthode surchargée de la classe Graphics ; vous pouvez donc lui fournir des arguments de diverses manières. Par exemple, vous pouvez construire deux objets Point et les passer en tant qu'arguments à la méthode DrawLine :

Dim myStartPoint As New Point(4, 2)
Dim myEndPoint As New Point(12, 6)
myGraphics.DrawLine(myPen, myStartPoint, myEndPoint)

Point myStartPoint = new Point(4, 2);
Point myEndPoint = new Point(12, 6);
myGraphics.DrawLine(myPen, myStartPoint, myEndPoint);

Construction d'un stylet

Vous pouvez spécifier certains attributs lorsque vous construisez un objet Pen. Par exemple, un constructeur Pen vous permet de spécifier la couleur et la largeur. L'exemple suivant dessine une ligne bleue de largeur 2 qui va du point (0, 0) au point (60, 30) :

Dim myPen As New Pen(Color.Blue, 2)
myGraphics.DrawLine(myPen, 0, 0, 60, 30)

Pen myPen = new Pen(Color.Blue, 2);
myGraphics.DrawLine(myPen, 0, 0, 60, 30);

Lignes en pointillés et embouts de ligne

L'objet Pen expose également des propriétés, telles que DashStyle, que vous pouvez utiliser pour spécifier des caractéristiques de la ligne. L'exemple suivant dessine une ligne en pointillés qui va du point (100, 50) au point (300, 80) :

myPen.DashStyle = DashStyle.Dash
myGraphics.DrawLine(myPen, 100, 50, 300, 80)

myPen.DashStyle = DashStyle.Dash;
myGraphics.DrawLine(myPen, 100, 50, 300, 80);

Vous pouvez utiliser les propriétés de l'objet Pen pour définir beaucoup d'autres attributs de la ligne. Les propriétés StartCap et EndCap spécifient l'aspect des extrémités de la ligne, lesquelles peuvent être à deux dimensions (flat), carrées, arrondies, triangulaires ou de forme personnalisée. La propriété LineJoin permet de spécifier si les lignes reliées entre elles forment une jointure à angle aigu, en biseau, arrondie ou découpée. L'illustration suivante présente des lignes avec différents styles d'extrémité et de jointure.

Lignes

Dessin d'un rectangle

Dans GDI+, un rectangle se dessine de la même manière qu'une ligne. Pour dessiner un rectangle, il vous faut un objet Graphics et un objet Pen. L'objet Graphics fournit une méthode DrawRectangle et l'objet Pen stocke des attributs, tels que la largeur et la couleur de ligne. L'objet Pen est passé à la méthode DrawRectangle en tant qu'argument. L'exemple suivant dessine un rectangle de largeur 80 et de hauteur 40 à partir du coin supérieur gauche situé en (100, 50) :

myGraphics.DrawRectangle(myPen, 100, 50, 80, 40)

myGraphics.DrawRectangle(myPen, 100, 50, 80, 40);

DrawRectangle est une méthode surchargée de la classe Graphics ; vous pouvez donc lui fournir des arguments de diverses manières. Par exemple, vous pouvez construire un objet Rectangle et le passer en tant qu'argument à la méthode DrawRectangle :

Dim myRectangle As New Rectangle(100, 50, 80, 40)
myGraphics.DrawRectangle(myPen, myRectangle)

Rectangle myRectangle = new Rectangle(100, 50, 80, 40);
myGraphics.DrawRectangle(myPen, myRectangle);

Un objet Rectangle comprend des méthodes et des propriétés permettant de manipuler et de collecter les informations qui le décrivent. Par exemple, les méthodes Inflate et Offset modifient la taille et la position du rectangle. La méthode IntersectsWith vous indique si le rectangle coupe un rectangle donné et la méthode Contains indique si un point donné se trouve dans le rectangle.

Voir aussi

Tâches

Comment : créer un stylet

Comment : dessiner une ligne dans un Windows Form

Comment : dessiner une forme avec contour

Référence

System.Drawing.Graphics

System.Drawing.Pen

System.Drawing.Rectangle