Metodo Font::GetHeight(constGraphics*) (gdiplusheaders.h)
Il metodo Font::GetHeight ottiene la spaziatura linea di questo tipo di carattere nell'unità corrente di un oggetto Graphics specificato. L'interlinea corrisponde alla distanza verticale tra le linee base di due righe di testo consecutive. Pertanto, la spaziatura linea include lo spazio vuoto tra le righe insieme all'altezza del carattere stesso.
Sintassi
REAL GetHeight(
const Graphics *graphics
);
Parametri
graphics
Puntatore a un oggetto Graphics la cui unità e la risoluzione verticale vengono usate nel calcolo dell'altezza.
Valore restituito
Tipo: Stato
Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .
Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .
Commenti
Se l'unità di carattere è impostata su qualsiasi elemento diverso da UnitPixel, l'altezza, in pixel, viene calcolata usando la risoluzione verticale dell'oggetto Graphics specificato. Si supponga, ad esempio, che l'unità di carattere sia pollici e la dimensione del carattere sia 0,3. Si supponga anche che per la famiglia di caratteri corrispondente, l'altezza em è 2048 e la spaziatura linea è 2355. Se l'unità dell'oggetto Graphics è UnitPixel e la risoluzione verticale dell'oggetto Graphics è 96 punti per pollice, l'altezza viene calcolata come segue:
2355*(0.3/2048)*96 = 33.1171875
Continuando con lo stesso esempio, si supponga che l'unità dell'oggetto Graphics sia diversa da UnitPixel, ad esempio UnitMillimeter. Quindi (usando 1 pollice = 25,4 millimetri) l'altezza, in millimetri, viene calcolata come segue:
2355*(0.3/2048)25.4 = 8.762256
Esempio
L'esempio seguente crea un oggetto Font, recupera l'altezza dell'oggetto Font e usa l'altezza per posizionare due righe di testo, con la seconda riga direttamente sotto la prima.
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);
}
Requisiti
Intestazione | gdiplusheaders.h |