GdipGetImageGraphicsContext()



Syntaxe
Resultat.i = GdipGetImageGraphicsContext(*image, @*graphics)
Paramètres
*image

[in] Pointeur sur un objet image qui sera associé au nouvel objet *graphics.

*graphics

[out] *graphics recevra un pointeur sur un objet Graphics. associé à l'image.

Description

Cette fonction permet de créer un objet Graphics qui est associé à un objet image.

La fonction échoue si l'image est basée sur un métafichier qui a été ouvert en lecture (avec les fonctions GdipLoadImageFromFile(), GdipLoadImageFromFileICM(), GdipCreateMetafileFromFile(), GdipCreateMetafileFromWmfFile()). Pour ouvrir un métafichier en écriture, utilisez les fonctions des métafichiers qui utilisent un hdc (device context handle).

La fonction échoue également si l'image utilise un des formats de pixel suivants :

#PixelFormatUndefined
# PixelFormatDontCare
#PixelFormat1bppIndexed
#PixelFormat4bppIndexed
#PixelFormat8bppIndexed
#PixelFormat16bppGrayScale
#PixelFormat16bppARGB1555

Le premier exemple charge une image au format PNG puis crée un objet graphique à partir de cette image (fonction GdipGetImageGraphicsContext()), mais ce n'est pas un graphique d'affichage associé à une fenêtre ou au hdc d'une fenêtre, toute modification faite sur ce graphique est bien effectué mais sur l'image. On crée ensuite une HatchBrush et on dessine sur le graphique, une ellipse remplie avec cette brush. Puis on crée un graphique à partir de la fenêtre (dans la boucle) et on affiche l'image. Un appel à la fonction GdipDeleteGraphics() doit être utilisé pour supprimer l'objet graphique de l'image et de la fenêtre.

L'image altérée donne ceci :

Le deuxième exemple est le premier exemple de la fonction GdipComment() et utilise un métafichier en écriture.

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