IDWriteFactory::CreateGlyphRunAnalysis 메서드(dwrite.h)
문자 모양 실행을 렌더링하는 데 사용되는 정보를 캡슐화하는 문자 모양 실행 분석 개체를 만듭니다.
구문
HRESULT CreateGlyphRunAnalysis(
[in] DWRITE_GLYPH_RUN const *glyphRun,
FLOAT pixelsPerDip,
[in, optional] DWRITE_MATRIX const *transform,
DWRITE_RENDERING_MODE renderingMode,
DWRITE_MEASURING_MODE measuringMode,
FLOAT baselineOriginX,
FLOAT baselineOriginY,
[out] IDWriteGlyphRunAnalysis **glyphRunAnalysis
);
매개 변수
[in] glyphRun
형식: const DWRITE_GLYPH_RUN*
문자 모양 실행의 속성을 포함하는 구조체입니다(글꼴 얼굴, 진행 등).
pixelsPerDip
형식: FLOAT
DIP당 물리적 픽셀 수(디바이스 독립적 픽셀). 예를 들어 96 DPI 비트맵에 렌더링하는 경우 pixelsPerDip 은 1입니다. 120 DPI 비트맵에 렌더링하는 경우 pixelsPerDip 은 1.25입니다.
[in, optional] transform
형식: const DWRITE_MATRIX*
문자 모양 및 해당 위치에 적용되는 선택적 변환입니다. 이 변환은 크기 조정에서 emSize 및 pixelsPerDip을 지정한 후에 적용됩니다.
renderingMode
래스터 렌더링 모드 중 하나여야 하는 렌더링 모드를 지정하는 값입니다(즉, 기본값이 아니고 윤곽선이 아님).
measuringMode
문자 모양과 함께 사용할 측정 모드를 지정합니다.
baselineOriginX
형식: FLOAT
기준선 원점의 가로 위치(X 좌표)(DIP)입니다.
baselineOriginY
형식: FLOAT
기준선 원점의 세로 위치(Y 좌표)(DIP)입니다.
[out] glyphRunAnalysis
형식: IDWriteGlyphRunAnalysis**
이 메서드가 반환되면 새로 만든 문자 모양 실행 분석 개체에 대한 포인터의 주소가 포함됩니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.
설명
문자 모양 실행 분석 개체에는 모든 문자 모양 위치와 글꼴 캐시의 모든 래스터화된 문자 모양에 대한 참조를 포함하여 문자 모양 실행을 분석한 결과가 포함됩니다.
예제
다음 코드 예제에서는 문자 모양 실행 분석 개체를 만드는 방법을 보여 줍니다. 이 예제에서는 빈 문자 모양 실행이 사용되고 있습니다.
HRESULT CreateGlyphRunAnalysis(IDWriteFontFace *pFontFace, IDWriteGlyphRunAnalysis **ppGlyphRunAnalysis)
{
HRESULT hr = S_OK;
IDWriteFactory* pDWriteFactory = NULL;
// Create the DirectWrite factory.
hr = DWriteCreateFactory(
DWRITE_FACTORY_TYPE_SHARED,
__uuidof(IDWriteFactory),
reinterpret_cast<IUnknown**>(&pDWriteFactory)
);
DWRITE_GLYPH_RUN emptyGlyphRun = { 0 };
UINT16 glyphIndex = 0;
emptyGlyphRun.fontFace = pFontFace;
emptyGlyphRun.glyphIndices = &glyphIndex;
emptyGlyphRun.glyphCount = 0;
emptyGlyphRun.fontEmSize = 12;
IDWriteGlyphRunAnalysis* pGlyphRunAnalysis = NULL;
if (SUCCEEDED(hr))
{
hr = pDWriteFactory->CreateGlyphRunAnalysis(
&emptyGlyphRun,
1.0f, // pixelsPerDip,
NULL, // transform,
DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC,
DWRITE_MEASURING_MODE_GDI_CLASSIC,
0.0f, // baselineOriginX,
0.0f, // baselineOriginY,
&pGlyphRunAnalysis);
}
*ppGlyphRunAnalysis = pGlyphRunAnalysis;
SafeRelease(&pDWriteFactory);
return S_OK;
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 7, Windows Vista SP2 및 Windows Vista용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2008 R2, Windows Server 2008 SP2 및 Windows Server 2008용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | dwrite.h |
라이브러리 | Dwrite.lib |
DLL | Dwrite.dll |