다음을 통해 공유


DrvTextOut 함수(winddi.h)

DrvTextOut 함수는 드라이버가 지정된 위치에서 문자 모양 집합을 렌더링하도록 요구하는 GDI의 진입점입니다.

구문

BOOL DrvTextOut(
  SURFOBJ  *pso,
  STROBJ   *pstro,
  FONTOBJ  *pfo,
  CLIPOBJ  *pco,
  RECTL    *prclExtra,
  RECTL    *prclOpaque,
  BRUSHOBJ *pboFore,
  BRUSHOBJ *pboOpaque,
  POINTL   *pptlOrg,
  MIX      mix
);

매개 변수

pso

쓸 표면을 설명하는 SURFOBJ 구조체에 대한 포인터입니다.

pstro

렌더링할 문자 모양과 배치할 위치를 정의하는 STROBJ 구조체에 대한 포인터입니다.

pfo

글꼴 및 해당 문자 모양에 대한 정보를 검색할 FONTOBJ 구조체에 대한 포인터입니다.

pco

모든 렌더링을 수행해야 하는 클립 영역을 정의하는 CLIPOBJ 구조체에 대한 포인터입니다. 드라이버는 클립 영역 외부의 픽셀에 영향을 줄 수 없습니다.

prclExtra

RECTL 구조체에 대한 포인터입니다. GDI는 이 함수에 대한 호출에서 항상 이 매개 변수를 NULL 로 설정합니다. 드라이버에서 무시해야 합니다.

prclOpaque

단일 불투명 사각형을 나타내는 RECTL 구조체에 대한 포인터입니다. 이 사각형은 오른쪽 아래에만 있습니다. 이 사각형 내의 픽셀(전경이 아니고 잘리지 않은 픽셀)은 불투명 브러시로 렌더링되어야 합니다. 이 사각형은 항상 그릴 텍스트의 경계를 지정합니다. 이 매개 변수가 NULL이면 불투명 픽셀을 렌더링할 수 없습니다.

pboFore

전경 픽셀에 사용할 브러시 개체를 나타내는 BRUSHOBJ 구조체에 대한 포인터입니다. 이 브러시는 항상 단색 브러시입니다.

pboOpaque

불투명 픽셀을 나타내는 BRUSHOBJ 구조체에 대한 포인터입니다. 이 브러시의 전경 및 배경 혼합 모드는 모두 R2_COPYPEN 것으로 간주됩니다. 드라이버가 DEVINFO 구조체의 flGraphicsCaps 멤버에서 GCAPS_ARBRUSHOPAQUE 기능 비트를 설정하지 않는 한 항상 단색 브러시로 호출됩니다.

pptlOrg

두 브러시의 브러시 원점을 정의하는 POINTL 구조체에 대한 포인터입니다.

mix

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

반환 값

함수가 성공하면 반환 값은 TRUE 입니다. 그렇지 않으면 FALSE입니다.

설명

DrvTextOut에 대한 입력 매개 변수는 전경 및 불투명이라는 두 개의 픽셀 집합을 정의합니다. 불투명 브러시를 사용하여 불투명 픽셀을 먼저 렌더링한 다음 전경 픽셀이 전경 브러시로 렌더링되는 프로세스와 결과가 동일하도록 드라이버는 표면을 렌더링해야 합니다. 이러한 각 작업은 클리핑으로 제한됩니다.

전경 및 불투명 픽셀은 색이 표면에 브러시되는 화면으로 간주됩니다. 글꼴의 문자 모양 자체에 색이 없습니다.

DrvTextOut에 대한 입력 매개 변수는 문자 모양 픽셀 집합, 추가 사각형 집합, 불투명 사각형 및 클립 영역을 정의합니다. 전경 및 불투명 픽셀 집합을 계산한 다음 렌더링하는 것은 드라이버의 책임입니다.

GDI는 DrvTextOutDrvDestroyFont 가 겹치지 않도록 보장합니다. 따라서 드라이버는 DrvTextOut 호출을 처리하는 동안 캐시된 정보를 사용할 수 있습니다.

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

조건부로 필요한 함수입니다.

요구 사항

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

추가 정보

CLIPOBJ

DEVINFO

DrvDestroyFont

FONTOBJ

STROBJ

SURFOBJ