Compartilhar via


Função DrvFillPath (winddi.h)

A função DrvFillPath é um ponto de entrada opcional para lidar com o preenchimento de caminhos fechados.

Sintaxe

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

Parâmetros

[in, out] pso

Ponteiro para uma estrutura SURFOBJ que define a superfície na qual desenhar.

[in] ppo

Ponteiro para uma estrutura PATHOBJ que define o caminho a ser preenchido. As rotinas de serviço PATHOBJ_Xxx são fornecidas para enumerar as linhas, as curvas de Bézier e outros dados que compõem o caminho.

[in] pco

Ponteiro para uma estrutura CLIPOBJ . As rotinas de serviço CLIPOBJ_Xxx são fornecidas para enumerar a região de clipe como um conjunto de retângulos.

[in] pbo

Ponteiro para uma estrutura BRUSHOBJ que define o padrão e as cores usados para preencher o caminho fechado. Esse parâmetro só deverá ser desreferenciado se a operação de preenchimento especificada na combinação exigir o uso de um pincel. Por exemplo, se mix for definido como BLACKNESS, pbo não será definido e não deverá ser desreferenciado.

[in] pptlBrushOrg

Ponteiro para uma estrutura POINTL que define a origem do pincel, que é usada para alinhar o padrão de pincel no dispositivo.

[in] mix

O modo de combinação que define as operações de raster em primeiro plano e segundo plano a serem usadas para o pincel. Para obter mais informações sobre o modo de combinação, consulte Comentários.

[in] flOptions

Especifica FP_WINDINGMODE, indicando que um preenchimento de modo sinuoso deve ser executado ou FP_ALTERNATEMODE, indicando que um preenchimento de modo alternado deve ser executado. Todos os outros sinalizadores devem ser ignorados. Para obter mais informações sobre esses modos, consulte Modos de preenchimento de caminho.

Valor retornado

O valor retornado será TRUE se o driver puder preencher o caminho. Se o caminho ou o recorte for muito complexo para ser manipulado pelo driver e deve ser tratado pelo GDI, o valor retornado será FALSE e um código de erro não será registrado. Se o driver encontrar um erro inesperado, como não conseguir perceber o pincel, o valor retornado será DDI_ERROR e um código de erro será registrado.

Comentários

A GDI pode chamar DrvFillPath para preencher um caminho em uma superfície gerenciada pelo dispositivo. Ao decidir se deseja chamar essa função, o GDI compara os requisitos de preenchimento com os seguintes sinalizadores no membro flGraphicsCaps da estrutura DEVINFO : GCAPS_BEZIERS, GCAPS_ALTERNATEFILL e GCAPS_WINDINGFILL.

O modo de combinação define como o padrão de entrada deve ser misturado com os dados que já estão na superfície do dispositivo. O tipo de dados MIX consiste em dois valores roP2 (operação de varredura binária) empacotados em um único ULONG. O byte de ordem mais baixa define a operação de varredura em primeiro plano; o próximo byte define a operação de varredura em segundo plano. Para obter mais informações sobre códigos de operação de varredura, consulte a documentação do SDK do Microsoft Windows.

Requisitos

   
Plataforma de Destino Área de Trabalho
Cabeçalho winddi.h (inclua Winddi.h)

Confira também

BRUSHOBJ

CLIPOBJ

DEVINFO

DrvStrokeAndFillPath

PATHOBJ

SURFOBJ