FD_GLYPHATTR struttura (winddi.h)
La struttura FD_GLYPHATTR viene usata per specificare il valore restituito per le funzioni FONTOBJ_pQueryGlyphAttrs e DrvQueryGlyphAttrs .
Sintassi
typedef struct _FD_GLYPHATTR {
ULONG cjThis;
ULONG cGlyphs;
ULONG iMode;
BYTE aGlyphAttr[1];
} FD_GLYPHATTR, *PFD_GLYPHATTR;
Members
cjThis
Dimensione in byte della struttura FD_GLYPHATTR, inclusa la matrice specificata dal membro aGlyphAttr .
cGlyphs
Specifica il numero di glifi nel tipo di carattere.
iMode
Flag che indica il tipo di informazioni restituite. Il flag seguente è definito:
Flag | Definizione |
---|---|
FO_ATTR_MODE_ROTATE | La matrice specificata da aGlyphAttr è una matrice di bit che indica quali glifi di un tipo di carattere verticale devono essere ruotati. La lunghezza della matrice di bit è (cGlyphs+7)/8. Se viene impostato un bit del glifo, il glifo deve essere ruotato durante la rasterizzazione. |
aGlyphAttr[1]
Matrice che fornisce le informazioni specificate da iMode. Le dimensioni di questa matrice sono (cGlyphs+7) / 8 byte.
Commenti
Se iMode è FO_ATTR_MODE_ROTATE (l'unico flag attualmente definito), un driver della stampante può determinare il bit corrispondente a un determinato indice glifo usando il frammento di codice seguente, dove hg è l'indice del glifo e pga è un puntatore a una struttura FD_GLYPHATTR. Se il bit nella matrice aGlyphAttr associato all'indice del glifo è impostato, il risultato è impostato su 1. Se lo stesso bit nella matrice non è impostato, il risultato è impostato su 0. Si noti che i bit all'interno di un byte vengono archiviati in modo che gli indici di glifo 0, 1, ..., 7 corrispondono a posizioni bit 7, 6, ..., 0 all'interno di un glifoAttr[0], indici glifi 8, 9, ..., 15 corrispondono a posizioni bit 7, 6, ..., 0 all'interno di aGlyphAttr[1], e così via.
BYTE glyphBits[8] = {0x80, 0x40, 0x20, 0x10, 0x8, 0x4, 0x2, 0x1};
result = (pga->aGlyphAttr[hg / 8]) & (glyphBits[hg % 8]);
Requisiti
Requisito | Valore |
---|---|
Intestazione | winddi.h (include Winddi.h) |