Método Font::GetHeight(constGraphics*) (gdiplusheaders.h)
O método Font::GetHeight obtém o espaçamento de linha dessa fonte na unidade atual de um objeto Graphics especificado. O espaçamento entre linhas é a distância vertical entre as linhas base de duas linhas consecutivas de texto. Assim, o espaçamento entre linhas inclui o espaço em branco entre linhas junto com a altura do próprio caractere.
Sintaxe
REAL GetHeight(
const Graphics *graphics
);
Parâmetros
graphics
Ponteiro para um objeto Graphics cuja unidade e resolução vertical são usadas no cálculo de altura.
Valor retornado
Tipo: Status
Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .
Se o método falhar, ele retornará um dos outros elementos da enumeração Status .
Comentários
Se a unidade de fonte for definida como algo diferente de UnitPixel, a altura, em pixels, será calculada usando a resolução vertical do objeto Graphics especificado. Por exemplo, suponha que a unidade de fonte seja polegadas e o tamanho da fonte seja 0,3. Suponha também que, para a família de fontes correspondente, a altura em é 2048 e o espaçamento entre linhas é 2355. Se a unidade do objeto Graphics for UnitPixel e a resolução vertical do objeto Graphics for de 96 pontos por polegada, a altura será calculada da seguinte maneira:
2355*(0.3/2048)*96 = 33.1171875
Continuando com o mesmo exemplo, suponha que a unidade do objeto Graphics seja algo diferente de UnitPixel, por exemplo , UnitMillimeter. Em seguida, (usando 1 polegada = 25,4 milímetros), a altura, em milímetros, é calculada da seguinte maneira:
2355*(0.3/2048)25.4 = 8.762256
Exemplos
O exemplo a seguir cria um objeto Font, recupera a altura do objeto Font e usa a altura para posicionar duas linhas de texto, com a segunda linha diretamente abaixo da primeira.
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);
}
Requisitos
Cabeçalho | gdiplusheaders.h |