DrvFillPath 함수(winddi.h)

DrvFillPath 함수는 닫힌 경로 채우기를 처리하는 선택적 진입점입니다.

구문

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

매개 변수

[in, out] pso

그릴 표면을 정의하는 SURFOBJ 구조체에 대한 포인터입니다.

[in] ppo

채울 경로를 정의하는 PATHOBJ 구조체에 대한 포인터입니다. PATHOBJ_Xxx 서비스 루틴은 경로를 구성하는 선, 베지어 곡선 및 기타 데이터를 열거하기 위해 제공됩니다.

[in] pco

CLIPOBJ 구조체에 대한 포인터입니다. CLIPOBJ_Xxx 서비스 루틴은 클립 영역을 사각형 집합으로 열거하기 위해 제공됩니다.

[in] pbo

닫힌 경로를 채우는 데 사용되는 패턴과 색을 정의하는 BRUSHOBJ 구조체에 대한 포인터입니다. 혼합으로 지정된 채우기 작업에 브러시를 사용해야 하는 경우에만 이 매개 변수를 역참조해야 합니다. 예를 들어 mix 가 BLACKNESS로 설정된 경우 pbo 는 정의되지 않으며 역참조해서는 안 됩니다.

[in] pptlBrushOrg

디바이스에서 브러시 패턴을 맞추는 데 사용되는 브러시 원점을 정의하는 POINTL 구조체에 대한 포인터입니다.

[in] mix

브러시에 사용할 전경 및 배경 래스터 작업을 정의하는 혼합 모드입니다. 혼합 모드에 대한 자세한 내용은 비고를 참조하세요.

[in] flOptions

구불구불한 모드 채우기를 수행해야 함을 나타내는 FP_WINDINGMODE 지정하거나, 교대 모드 채우기를 수행해야 함을 나타내는 FP_ALTERNATEMODE 지정합니다. 다른 모든 플래그는 무시해야 합니다. 이러한 모드에 대한 자세한 내용은 경로 채우기 모드를 참조하세요.

반환 값

드라이버가 경로를 채울 수 있는 경우 반환 값은 TRUE 입니다. 경로 또는 클리핑이 드라이버에서 처리하기에 너무 복잡하고 GDI에서 처리해야 하는 경우 반환 값은 FALSE이고 오류 코드는 기록되지 않습니다. 드라이버에서 브러시를 실현할 수 없는 등의 예기치 않은 오류가 발생하면 반환 값이 DDI_ERROR 오류 코드가 기록됩니다.

설명

GDI는 DrvFillPath 를 호출하여 디바이스 관리 표면의 경로를 채울 수 있습니다. 이 함수를 호출할지 여부를 결정할 때 GDI는 채우기 요구 사항을 DEVINFO 구조체의 flGraphicsCaps 멤버인 GCAPS_BEZIERS, GCAPS_ALTERNATEFILL 및 GCAPS_WINDINGFILL 플래그와 비교합니다.

혼합 모드는 들어오는 패턴을 디바이스 화면에 이미 있는 데이터와 혼합하는 방법을 정의합니다. MIX 데이터 형식은 단일 ULONG으로 압축된 두 개의 ROP2(이진 래스터 작업) 값으로 구성됩니다. 가장 낮은 순서 바이트는 포그라운드 래스터 작업을 정의합니다. 다음 바이트는 백그라운드 래스터 작업을 정의합니다. 래스터 작업 코드에 대한 자세한 내용은 Microsoft Windows SDK 설명서를 참조하세요.

요구 사항

   
대상 플랫폼 데스크톱
머리글 winddi.h(Winddi.h 포함)

추가 정보

BRUSHOBJ

CLIPOBJ

DEVINFO

DrvStrokeAndFillPath

PATHOBJ

SURFOBJ