Função DrvQueryFontData (winddi.h)
A função DrvQueryFontData recupera informações sobre uma fonte realizada.
Sintaxe
LONG DrvQueryFontData(
DHPDEV dhpdev,
FONTOBJ *pfo,
ULONG iMode,
HGLYPH hg,
GLYPHDATA *pgd,
[out] PVOID pv,
ULONG cjSize
);
Parâmetros
dhpdev
Manipule para o PDEV do dispositivo físico que foi retornado de uma chamada anterior para DrvEnablePDEV.
pfo
Ponteiro para uma estrutura FONTOBJ que define a realização da fonte.
iMode
Especifica o tipo de informação solicitada. Esse parâmetro pode usar um dos valores a seguir:
Valor | Significado |
---|---|
QFD_GLYPHANDBITMAP |
Se pgd não for NULL, o driver deverá preencher a estrutura GLYPHDATA com as métricas do glifo especificadas por hg.
Se pv não for NULL, uma estrutura GLYPHBITS deverá ser gravada neste endereço. O driver deve copiar o bitmap de glifo correspondente ao glifo especificado por hg nessa estrutura. O tamanho da estrutura é especificado por cjSize. Se não houver suporte para bitmaps de glifo pelo driver, essa função só será chamada com pv definido como NULL. Se o driver der suporte a bitmaps de glifo, o valor retornado será o tamanho, em bytes, do bitmap de glifo. Caso contrário, será zero. Esse modo deve ter suporte. |
QFD_GLYPHANDOUTLINE |
Se pgd não for NULL, o driver deverá preencher a estrutura GLYPHDATA com as métricas do glifo especificadas por hg.
Se pv não for NULL, uma estrutura PATHOBJ deverá ser gravada neste endereço. O driver passa esse PATHOBJ para os serviços PATHOBJ_Xxx para criar a estrutura de tópicos para o glifo especificado por hg. O parâmetro cjSize deve ser ignorado. O valor retornado será zero se a função for bem-sucedida. Caso contrário, será FD_ERROR. Somente os drivers de fonte que fornecem estruturas de tópicos de glifo precisam dar suporte a esse modo. |
QFD_MAXEXTENTS |
Se pv não for NULL, o driver deverá gravar uma estrutura FD_DEVICEMETRICS no buffer apontado por pv.
O valor retornado é o tamanho, em bytes, necessário para o buffer se pv for NULL. |
QFD_TT_GRAY1_BITMAP | A fonte realizada deve ser renderizada em um bit por pixel de escala de cinza (ou seja, preto ou branco). |
QFD_TT_GRAY2_BITMAP | A fonte realizada deve ser renderizada em dois bits por pixel de escala de cinza. |
QFD_TT_GRAY4_BITMAP | A fonte realizada deve ser renderizada em quatro bits por pixel de escala de cinza. |
QFD_TT_GRAY8_BITMAP | A fonte realizada deve ser renderizada em oito bits por pixel de escala de cinza. |
QFD_TT_MONO_BITMAP | O mesmo que QFD_TT_GRAY1_BITMAP. |
hg
Manipule para o glifo.
pgd
Ponteiro para a estrutura GLYPHDATA . Este parâmetro pode ser NULL.
[out] pv
Ponteiro para um buffer de dados. O tipo de dados gravados nesse buffer depende do iMode. Este parâmetro pode ser NULL.
cjSize
Especifica o tamanho do buffer apontado por pv.
Retornar valor
O valor retornado depende do valor do parâmetro iMode . Se ocorrer um erro, o valor retornado será FD_ERROR e um código de erro será registrado.
Comentários
Para os valores QFD_GLYPHANDBITMAP e QFD_GLYPHANDOUTLINE do parâmetro iMode , a GDI fornece um ponteiro para uma estrutura GLYPHDATA (no parâmetro pgd ). O driver coloca informações sobre métricas de glifo nessa estrutura e grava o conteúdo de uma estrutura GLYPHBITS ou de uma estrutura PATHOBJ no local especificado pelo parâmetro pv , dependendo respectivamente, se a fonte é uma fonte bitmap ou uma fonte de estrutura de tópicos. Para o valor QFD_MAXEXTENTS do parâmetro iMode , o driver grava o conteúdo de uma estrutura FD_DEVICEMETRICS no local especificado pelo parâmetro pv .
DrvQueryFontData é necessário para drivers de fonte e drivers que usam fontes específicas do dispositivo ou específicas do driver.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | winddi.h (inclua Winddi.h) |