Partager via


DrvFillPath, fonction (winddi.h)

La fonction DrvFillPath est un point d’entrée facultatif pour gérer le remplissage des chemins fermés.

Syntaxe

BOOL DrvFillPath(
  [in, out] SURFOBJ  *pso,
  [in]      PATHOBJ  *ppo,
  [in]      CLIPOBJ  *pco,
  [in]      BRUSHOBJ *pbo,
  [in]      POINTL   *pptlBrushOrg,
  [in]      MIX      mix,
  [in]      FLONG    flOptions
);

Paramètres

[in, out] pso

Pointeur vers une structure SURFOBJ qui définit la surface sur laquelle dessiner.

[in] ppo

Pointeur vers une structure PATHOBJ qui définit le chemin à remplir. Les routines de service PATHOBJ_Xxx sont fournies pour énumérer les lignes, les courbes de Bézier et d’autres données qui composent le chemin.

[in] pco

Pointeur vers une structure CLIPOBJ . Les routines de service CLIPOBJ_Xxx sont fournies pour énumérer la région de clip sous la forme d’un ensemble de rectangles.

[in] pbo

Pointeur vers une structure BRUSHOBJ qui définit le motif et les couleurs utilisés pour remplir le chemin fermé. Ce paramètre doit être déréférencé uniquement si l’opération de remplissage spécifiée dans mix nécessite l’utilisation d’un pinceau. Par exemple, si mix est défini sur BLACKNESS, pbo n’est pas défini et ne doit pas être déréférencé.

[in] pptlBrushOrg

Pointeur vers une structure POINTL qui définit l’origine du pinceau, qui est utilisée pour aligner le modèle de pinceau sur l’appareil.

[in] mix

Mode de combinaison qui définit les opérations de trame de premier plan et d’arrière-plan à utiliser pour le pinceau. Pour plus d’informations sur le mode mix, consultez Remarques.

[in] flOptions

Spécifie FP_WINDINGMODE, indiquant qu’un remplissage en mode de remontage doit être effectué, ou FP_ALTERNATEMODE, indiquant qu’un remplissage en mode alternatif doit être effectué. Tous les autres indicateurs doivent être ignorés. Pour plus d’informations sur ces modes, consultez Modes de remplissage de chemin.

Valeur retournée

La valeur de retour est TRUE si le pilote est en mesure de remplir le chemin. Si le chemin d’accès ou le découpage est trop complexe pour être géré par le pilote et doit être géré par GDI, la valeur de retour est FALSE et aucun code d’erreur n’est journalisé. Si le pilote rencontre une erreur inattendue, telle que l’impossibilité de réaliser le pinceau, la valeur de retour est DDI_ERROR et un code d’erreur est journalisé.

Remarques

GDI peut appeler DrvFillPath pour remplir un chemin sur une surface gérée par l’appareil. Lorsque vous décidez d’appeler cette fonction, GDI compare les exigences de remplissage avec les indicateurs suivants dans le membre flGraphicsCaps de la structure DEVINFO : GCAPS_BEZIERS, GCAPS_ALTERNATEFILL et GCAPS_WINDINGFILL.

Le mode de combinaison définit la façon dont le modèle entrant doit être mélangé avec les données qui se trouvent déjà sur la surface de l’appareil. Le type de données MIX se compose de deux valeurs d’opération raster binaire (ROP2) regroupées dans un seul ULONG. L’octet d’ordre le plus bas définit l’opération de raster au premier plan ; l’octet suivant définit l’opération de trame d’arrière-plan. Pour plus d’informations sur les codes d’opération raster, consultez la documentation Microsoft Windows SDK.

Configuration requise

   
Plateforme cible Bureau
En-tête winddi.h (inclure Winddi.h)

Voir aussi

BRUSHOBJ

CLIPOBJ

DEVINFO

DrvStrokeAndFillPath

PATHOBJ

SURFOBJ