Funzione DrvQueryFontData (winddi.h)

La funzione DrvQueryFontData recupera informazioni su un tipo di carattere realizzato.

Sintassi

LONG DrvQueryFontData(
        DHPDEV    dhpdev,
        FONTOBJ   *pfo,
        ULONG     iMode,
        HGLYPH    hg,
        GLYPHDATA *pgd,
  [out] PVOID     pv,
        ULONG     cjSize
);

Parametri

dhpdev

Gestire il PDEV del dispositivo fisico restituito da una chiamata precedente a DrvEnablePDEV.

pfo

Puntatore a una struttura FONTOBJ che definisce la realizzazione del carattere.

iMode

Specifica il tipo di informazioni richieste. Questo parametro può essere uno dei valori seguenti:

Valore Significato
QFD_GLYPHANDBITMAP Se pgd non è NULL, il driver deve compilare la struttura GLYPHDATA con le metriche del glifo specificato da hg.

Se pv non è NULL, è necessario scrivere una struttura GLYPHBITS in questo indirizzo. Il driver deve copiare la bitmap del glifo corrispondente al glifo specificato da hg in questa struttura. Le dimensioni della struttura sono specificate da cjSize.

Se le bitmap del glifo non sono supportate dal driver, questa funzione verrà chiamata solo con pv impostata su NULL.

Se il driver supporta le bitmap del glifo, il valore restituito è la dimensione, in byte, della bitmap del glifo. In caso contrario, è zero.

Questa modalità deve essere supportata.

QFD_GLYPHANDOUTLINE Se pgd non è NULL, il driver deve compilare la struttura GLYPHDATA con le metriche del glifo specificato da hg.

Se pv non è NULL, una struttura PATHOBJ deve essere scritta in questo indirizzo. Il driver passa questo PATHOBJ ai servizi PATHOBJ_Xxx per creare la struttura per il glifo specificato da hg. Il parametro cjSize deve essere ignorato.

Il valore restituito è zero se la funzione ha esito positivo. In caso contrario, è FD_ERROR.

Solo i driver di carattere che forniscono contorni glifi devono supportare questa modalità.

QFD_MAXEXTENTS Se pv non è NULL, il driver deve scrivere una struttura FD_DEVICEMETRICS nel buffer a cui punta da pv.

Il valore restituito è la dimensione, in byte, necessaria per il buffer se pv è NULL.

QFD_TT_GRAY1_BITMAP Il carattere realizzato deve essere sottoposto a rendering in un bit per pixel di scala grigia, ovvero nero o bianco.
QFD_TT_GRAY2_BITMAP Il carattere realizzato deve essere eseguito il rendering in due bit per pixel di scala grigia.
QFD_TT_GRAY4_BITMAP Il tipo di carattere realizzato deve essere eseguito in quattro bit per pixel di scala grigia.
QFD_TT_GRAY8_BITMAP Il tipo di carattere realizzato deve essere eseguito in otto bit per pixel di scala grigia.
QFD_TT_MONO_BITMAP Uguale a QFD_TT_GRAY1_BITMAP.

hg

Gestire il glifo.

pgd

Puntatore alla struttura GLYPHDATA . Questo parametro può essere NULL.

[out] pv

Puntatore a un buffer di dati. Il tipo di dati scritti in questo buffer dipende da iMode. Questo parametro può essere NULL.

cjSize

Specifica le dimensioni del buffer a cui punta da pv.

Valore restituito

Il valore restituito dipende dal valore del parametro iMode . Se si verifica un errore, il valore restituito è FD_ERROR e viene registrato un codice di errore.

Commenti

Per i valori QFD_GLYPHANDBITMAP e QFD_GLYPHANDOUTLINE del parametro iMode , GDI fornisce un puntatore a una struttura GLYPHDATA (nel parametro pgd ). Il driver inserisce informazioni sulle metriche del glifo in questa struttura e scrive il contenuto di una struttura GLYPHBITS o di una struttura PATHOBJ nella posizione specificata dal parametro pv , a seconda rispettivamente, se il tipo di carattere è un carattere bitmap o un carattere di struttura. Per il valore QFD_MAXEXTENTS del parametro iMode , il driver scrive il contenuto di una struttura FD_DEVICEMETRICS nella posizione specificata dal parametro pv .

DrvQueryFontData è necessario per i driver e i driver di carattere che usano tipi di carattere specifici del dispositivo o specifici del driver.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione winddi.h (include Winddi.h)

Vedi anche

DrvEnablePDEV

DrvQueryFontFile

FD_DEVICEMETRICS

FONTOBJ

GLYPHBITS

GLYPHDATA

PATHOBJ