Funzione GetTextExtentExPointI (wingdi.h)

La funzione GetTextExtentExPointI recupera il numero di caratteri in una stringa specificata che si adatta all'interno di uno spazio specificato e riempie una matrice con l'extent di testo per ognuno di questi caratteri. Un extent di testo è la distanza tra l'inizio dello spazio e un carattere che si adatta allo spazio. Queste informazioni sono utili per i calcoli di ritorno a capo automatico.

Sintassi

BOOL GetTextExtentExPointI(
  [in]  HDC    hdc,
  [in]  LPWORD lpwszString,
  [in]  int    cwchString,
  [in]  int    nMaxExtent,
  [out] LPINT  lpnFit,
  [out] LPINT  lpnDx,
  [out] LPSIZE lpSize
);

Parametri

[in] hdc

Handle per il contesto del dispositivo.

[in] lpwszString

Puntatore a una matrice di indici del glifo per i quali devono essere recuperati gli extent.

[in] cwchString

Numero di glifi nella matrice a cui punta il parametro pgiIn .

[in] nMaxExtent

Larghezza massima consentita, in unità logiche, della stringa formattata.

[out] lpnFit

Puntatore a un numero intero che riceve un conteggio del numero massimo di caratteri che verrà inserito nello spazio specificato dal parametro nMaxExtent . Quando il parametro lpnFit è NULL, il parametro nMaxExtent viene ignorato.

[out] lpnDx

Puntatore a una matrice di interi che riceve gli extent parziali del glifo. Ogni elemento nella matrice assegna la distanza, in unità logiche, tra l'inizio della matrice degli indici del glifo e uno dei glifi che si inserisce nello spazio specificato dal parametro nMaxExtent . Sebbene questa matrice contenga almeno il numero di elementi specificati dal parametro cgi , la funzione riempie la matrice con extent solo per il numero di indici glifi specificato dal parametro lpnFit . Se lpnFit è NULL, la funzione non calcola le larghezze parziali delle stringhe.

[out] lpSize

Puntatore a una struttura SIZE che riceve le dimensioni della matrice di indici del glifo, in unità logiche. Questo valore non può essere NULL.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero.

Commenti

Se entrambi i parametri lpnFit e alpDx sono NULL, la chiamata alla funzione GetTextExtentExPointI equivale a chiamare la funzione GetTextExtentPointI .

Quando questa funzione restituisce l'extent di testo, presuppone che il testo sia orizzontale, ovvero che l'escape sia sempre 0. Questo vale sia per le misurazioni orizzontali che verticali del testo. Anche se si usa un tipo di carattere che specifica un carattere di escape diverso da zero, questa funzione non usa l'angolo mentre calcola l'extent di testo. L'app deve convertirla in modo esplicito. Tuttavia, quando la modalità grafica è impostata su GM_ADVANCED e l'orientamento del carattere è di 90 gradi rispetto all'orientamento di stampa, i valori restituiti da questa funzione non seguono questa regola. Quando l'orientamento del carattere e l'orientamento di stampa corrispondono per una determinata stringa, questa funzione restituisce le dimensioni della stringa nella struttura SIZE come { cx : 116, cy : 18 }. Quando l'orientamento dei caratteri e l'orientamento di stampa sono separati da 90 gradi per la stessa stringa, questa funzione restituisce le dimensioni della stringa nella struttura SIZE come { cx : 18, cy : 116 }.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wingdi.h (include Windows.h)
Libreria Gdi32.lib
DLL Gdi32.dll

Vedi anche

Funzioni per tipi di carattere e testo

Cenni preliminari su tipi di carattere e testo

GetTextExtentPoint

SIZE