Funzione DrvFillPath (winddi.h)

La funzione DrvFillPath è un punto di ingresso facoltativo per gestire il riempimento dei percorsi chiusi.

Sintassi

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

Parametri

[in, out] pso

Puntatore a una struttura SURFOBJ che definisce la superficie su cui disegnare.

[in] ppo

Puntatore a una struttura PATHOBJ che definisce il percorso da riempire. Le routine di servizio PATHOBJ_Xxx vengono fornite per enumerare le righe, le curve di Bezier e altri dati che costituiscono il percorso.

[in] pco

Puntatore a una struttura CLIPOBJ . Le routine di servizio CLIPOBJ_Xxx vengono fornite per enumerare l'area clip come set di rettangoli.

[in] pbo

Puntatore a una struttura BRUSHOBJ che definisce il modello e i colori usati per riempire il percorso chiuso. Questo parametro deve essere dereferenziato solo se l'operazione di riempimento specificata in combinazione richiede l'uso di un pennello. Ad esempio, se il mix è impostato su BLACKNESS, pbo non è definito e non deve essere dereferenziato.

[in] pptlBrushOrg

Puntatore a una struttura POINTL che definisce l'origine del pennello, utilizzata per allineare il modello di pennello nel dispositivo.

[in] mix

Modalità di combinazione che definisce le operazioni raster in primo piano e in background da usare per il pennello. Per altre informazioni sulla modalità di combinazione, vedere Osservazioni.

[in] flOptions

Specifica FP_WINDINGMODE, che indica che deve essere eseguita una modalità di riempimento della modalità di avvolgimento o FP_ALTERNATEMODE, che indica che deve essere eseguito un riempimento in modalità alternata. Tutti gli altri flag devono essere ignorati. Per altre informazioni su queste modalità, vedere Modalità di riempimento percorso.

Valore restituito

Il valore restituito è TRUE se il driver è in grado di riempire il percorso. Se il percorso o il ritaglio è troppo complesso da gestire dal driver e deve essere gestito da GDI, il valore restituito è FALSE e un codice di errore non viene registrato. Se il driver rileva un errore imprevisto, ad esempio non è in grado di realizzare il pennello, il valore restituito è DDI_ERROR e viene registrato un codice di errore.

Commenti

GDI può chiamare DrvFillPath per compilare un percorso in una superficie gestita dal dispositivo. Quando si decide se chiamare questa funzione, GDI confronta i requisiti di riempimento con i flag seguenti nel membro flGraphicsCaps della struttura DEVINFO : GCAPS_BEZIERS, GCAPS_ALTERNATEFILL e GCAPS_WINDINGFILL.

La modalità mix definisce il modo in cui il modello in ingresso deve essere misto con i dati già presenti nell'area del dispositivo. Il tipo di dati MIX è costituito da due valori di operazione raster binaria (ROP2) compressi in una singola ULONG. Il byte più basso definisce l'operazione raster in primo piano; il byte successivo definisce l'operazione raster in background. Per altre informazioni sui codici di operazione raster, vedere la documentazione di Microsoft Windows SDK.

Requisiti

   
Piattaforma di destinazione Desktop
Intestazione winddi.h (include Winddi.h)

Vedi anche

BRUSHOBJ

CLIPOBJ

DEVINFO

DrvStrokeAndFillPath

PATHOBJ

SURFOBJ