GdipCreatePen2()



Syntaxe
Resultat.i = GdipCreatePen2(*brush, width.f, unit.i, *pen)
Paramètres
*brush

[in] Pointeur sur un objet brush.

width.f

[in] Largeur du pen exprimé dans l'unité définie par le paramètre unit.l.

unit.i

[in] Élément de l'énumération Unit qui défini l'unité utilisée pour la largeur du pen.

*pen

[out] *pen recevra l'objet Pen créé.

Description
Cette fonction crée un objet pen à partir d'un objet brush permettant de dessiner des lignes et courbes. La largeur du trait est définie par width.f et unit.l.

L'objet brush détermine la manière dont l'objet Pen dessine les lignes. Celles-ci sont dessinées comme s'il s'agissait de rectangles pleins, avec les caractéristiques de la brush spécifiée.

La largeur width.f doit être un nombre positif. Si width.f est inférieur ou égal à 0, la largeur du pen sera fixée à 1.

Le paramètre unit.l peut valoir une des valeurs suivante (énumération unit) :

#UnitWorld

Les coordonnées sont exprimées en " World coordinate" qui est une unité de mesure non physique. La mesure n'est pas liée au monde physique (affichage, impression etc.) mais a un sens au par rapport à l'application qui l'utilise. Elle est aussi appelée unité universelle.

#UnitDisplay

Spécifie une unité de mesure d'affichage. Par exemple, si le dispositif d'affichage est un moniteur, alors l'unité vaut 1 pixel.
Uniquement pour les transformations de page.

#UnitPixel

Spécifie le pixel de périphérique comme unité de mesure. Chaque unité vaut 1 pixel.

#UnitPoint

Spécifie une unité de mesure égale au point d'imprimante (1/72ème de pouce = 1/72 inch).

#UnitInch

Spécifie le pouce comme unité de mesure. Chaque unité vaut 1 pouce (=inch).

#UnitDocument

Spécifie une unité de mesure égale à l'unité du document. Chaque unité vaut 1/300ème de pouce = 1/300 inch).

#UnitMillimeter

Spécifie le millimètre comme unité de mesure. Chaque unité vaut 1 millimètre

Le premier fichier d'exemple montre la création d'un pen basée sur une LinearGradientBrush (dégradé linéaire) ayant 2 couleurs, le rouge et le bleu (pas de transparence).
Le dégradé de la brush est vertical. A l'aide du pen on dessine un rectangle dont les dimensions sont supérieures aux dimensions de la brush, en particulier verticalement qui est le sens du dégradé.

Il y a répétition du motif verticalement à partir du moment ou le rectangle dépasse la taille de la brush qui est référencée par rapport à l'origine du graphique.

La couleur des traits horizontaux ou verticaux dépend de leur position par rapport à l'origine du graphique (sur lequel les objets sont dessinés) qui est toujours à x=0 et y=0.

Le deuxième fichier utilise la même brush mais ne dessine que le rectangle à des coordonnées différentes en Y. En regardant les 2 exemples, on se rend compte que la position ou sont dessinés les objets sur le graphique détermine la couleur par rapport aux dimensions de la brush.

Résultat de la fonction
Si la fonction réussit, elle retourne #Ok qui est une constante de l'énumération status.
Si la fonction échoue, elle retourne une des autres valeurs de l'énumération status.
PB - OS
PureBasic v4.30 bêta 4 (Windows - x86)
Testé avec Windows Vista édition familiale Premium