IPrintOemDriverUni::D rvUniTextOut 메서드(prcomoem.h)
메서드는 IPrintOemDriverUni::DrvUniTextOut
Unidrv 드라이버에서 제공되므로 디바이스 관리 드로잉 화면을 사용하는 렌더링 플러그 인이 텍스트 문자열을 쉽게 출력할 수 있습니다.
구문
HRESULT DrvUniTextOut(
SURFOBJ *pso,
STROBJ *pstro,
FONTOBJ *pfo,
CLIPOBJ *pco,
RECTL *prclExtra,
RECTL *prclOpaque,
BRUSHOBJ *pboFore,
BRUSHOBJ *pboOpaque,
POINTL *pptlBrushOrg,
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 기능 비트를 설정하지 않는 한 항상 단색 브러시로 호출됩니다.
pptlBrushOrg
두 브러시의 브러시 원점을 정의하는 POINTL 구조체에 대한 포인터입니다.
mix
pboFore에 대한 전경 및 배경 래스터 작업(혼합 모드)입니다.
반환 값
메서드는 다음 값 중 하나를 반환해야 합니다.
반환 코드 | Description |
---|---|
|
작업에 성공했습니다. |
|
작업이 실패했습니다. |
|
메서드가 구현되지 않았습니다. |
설명
메서드는 IPrintOemDriverUni::DrvUniTextOut
장치 관리 드로잉 화면을 지원하는 플러그 인을 렌더링하여 사용할 수 있도록 Unidrv에서 제공합니다. 이러한 렌더링 플러그 인은 Unidrv의 DrvTextOut 함수를 후크해야 하며 IPrintOemDriverUni::DrvUniTextOut
메서드는 해당 후킹 함수에서 호출되어야 합니다. 후킹 함수는 텍스트 영역 클리핑 및 텍스트 회전 작업을 수행해야 합니다. 그런 다음 를 호출 IPrintOemDriverUni::DrvUniTextOut
하여 Unidrv를 요청하여 다운로드 가능한 글꼴을 사용하여 텍스트 문자열을 만들고 문자 모양 기반 클리핑을 수행할 수 있습니다.
글꼴을 사용할 수 없거나 회전되어 텍스트 문자열을 만들 수 없는 경우 IPrintOemDriverUni::DrvUniTextOut
렌더링 플러그 인의 IPrintOemUni::TextOutAsBitmap 메서드를 호출하여 텍스트 문자열을 비트맵으로 그립니다.
자세한 내용은 Device-Managed Surface 처리를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | prcomoem.h(Prcomoem.h 포함) |