Font::GetHeight(constGraphics*) 메서드(gdiplusheaders.h)
Font::GetHeight 메서드는 지정된 Graphics 개체의 현재 단위에서 이 글꼴의 줄 간격을 가져옵니다. 줄 간격은 텍스트에 있는 연속된 두 줄 사이의 세로 거리입니다. 따라서 줄 간격에는 문자 자체의 높이와 함께 선 사이의 빈 공간이 포함됩니다.
구문
REAL GetHeight(
const Graphics *graphics
);
매개 변수
graphics
높이 계산에 단위 및 세로 해상도가 사용되는 Graphics 개체에 대한 포인터입니다.
반환 값
형식: 상태
메서드가 성공하면 Status 열거형의 요소인 확인을 반환합니다.
메서드가 실패하면 Status 열거형의 다른 요소 중 하나를 반환합니다.
설명
글꼴 단위가 UnitPixel 이외의 값으로 설정된 경우 지정된 Graphics 개체의 세로 해상도를 사용하여 높이를 픽셀 단위로 계산합니다. 예를 들어 글꼴 단위가 인치이고 글꼴 크기가 0.3이라고 가정합니다. 또한 해당 글꼴 패밀리의 경우 em 높이가 2048이고 줄 간격이 2355라고 가정합니다. Graphics 개체의 단위가 UnitPixel 이고 Graphics 개체의 세로 해상도가 인치당 96개인 경우 높이는 다음과 같이 계산됩니다.
2355*(0.3/2048)*96 = 33.1171875
동일한 예제를 계속 진행하면서 Graphics 개체의 단위가 UnitPixel 이외의 항목이라고 가정합니다( 예: UnitMillimeter). 그런 다음(1인치 = 25.4밀리미터 사용) 높이(밀리미터)는 다음과 같이 계산됩니다.
2355*(0.3/2048)25.4 = 8.762256
예제
다음 예제에서는 Font 개체를 만들고 Font 개체의 높이를 검색하며 높이를 사용하여 두 줄의 텍스트를 배치하고 두 번째 줄은 첫 번째 줄 바로 아래에 배치합니다.
VOID Example_GetHeight(HDC hdc)
{
Graphics graphics(hdc);
// Create a Font object.
Font myFont(L"Arial", 16);
// Draw text with myFont.
SolidBrush solidbrush_1(Color(255, 0, 0, 0));
WCHAR string[] = L"The first line of text";
graphics.DrawString(string, 22, &myFont, PointF(0, 0), &solidbrush_1);
// Get the height of myFont.
REAL height = myFont.GetHeight(&graphics);
// Draw text immediately below the first line of text.
SolidBrush solidbrush_2(Color(255, 255, 0, 0));
WCHAR string[] = L"The second line of text";
graphics.DrawString(string2, 23, &myFont, PointF(0, height),
&solidbrush_2);
}
요구 사항
머리글 | gdiplusheaders.h |