Compartilhar via


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)

Confira também

DrvEnablePDEV

DrvQueryFontFile

FD_DEVICEMETRICS

FONTOBJ

GLIFOBITS

GLIFODATA

PATHOBJ