struttura PRINTIFI32 (prntfont.h)
La struttura PRINTIFI32 è una versione a dimensione fissa della struttura IFIMETRICS e definisce le informazioni per un carattere tipografico specifico che può essere usato da GDI.
Sintassi
typedef struct _PRINTIFI32 {
ULONG cjThis;
ULONG cjIfiExtra;
PTRDIFF dpwszFamilyName;
PTRDIFF dpwszStyleName;
PTRDIFF dpwszFaceName;
PTRDIFF dpwszUniqueName;
PTRDIFF dpFontSim;
LONG lEmbedId;
LONG lItalicAngle;
LONG lCharBias;
PTRDIFF dpCharSets;
BYTE jWinCharSet;
BYTE jWinPitchAndFamily;
USHORT usWinWeight;
ULONG flInfo;
USHORT fsSelection;
USHORT fsType;
FWORD fwdUnitsPerEm;
FWORD fwdLowestPPEm;
FWORD fwdWinAscender;
FWORD fwdWinDescender;
FWORD fwdMacAscender;
FWORD fwdMacDescender;
FWORD fwdMacLineGap;
FWORD fwdTypoAscender;
FWORD fwdTypoDescender;
FWORD fwdTypoLineGap;
FWORD fwdAveCharWidth;
FWORD fwdMaxCharInc;
FWORD fwdCapHeight;
FWORD fwdXHeight;
FWORD fwdSubscriptXSize;
FWORD fwdSubscriptYSize;
FWORD fwdSubscriptXOffset;
FWORD fwdSubscriptYOffset;
FWORD fwdSuperscriptXSize;
FWORD fwdSuperscriptYSize;
FWORD fwdSuperscriptXOffset;
FWORD fwdSuperscriptYOffset;
FWORD fwdUnderscoreSize;
FWORD fwdUnderscorePosition;
FWORD fwdStrikeoutSize;
FWORD fwdStrikeoutPosition;
BYTE chFirstChar;
BYTE chLastChar;
BYTE chDefaultChar;
BYTE chBreakChar;
WCHAR wcFirstChar;
WCHAR wcLastChar;
WCHAR wcDefaultChar;
WCHAR wcBreakChar;
POINTL ptlBaseline;
POINTL ptlAspect;
POINTL ptlCaret;
RECTL rclFontBox;
BYTE achVendId[4];
ULONG cKerningPairs;
ULONG ulPanoseCulture;
PANOSE panose;
} PRINTIFI32, *PPRINTIFI32;
Membri
cjThis
Specifica le dimensioni in byte di questa struttura. Le dimensioni specificate includono tutte le stringhe Unicode aggiunte alla fine di questa struttura, oltre alle dimensioni in byte della struttura facoltativa IFIEXTRA.
cjIfiExtra
Specifica le dimensioni in byte della struttura IFIEXTRA che segue questa struttura. Il valore zero indica che non è presente alcuna struttura IFIEXTRA.
dpwszFamilyName
Specifica l'offset in byte in una stringa Unicode con terminazione Null contenente il nome della famiglia del tipo di carattere, ad esempio "Times Roman". In genere, questa stringa segue immediatamente questa struttura. Questa stringa deve corrispondere al nome registrato nel lfFaceName membro della struttura LOGFONT Win32.
dpwszStyleName
Specifica l'offset in byte in una stringa Unicode con terminazione Null che descrive lo stile del tipo di carattere , ad esempio "Grassetto".
dpwszFaceName
Specifica l'offset in byte di una stringa Unicode con terminazione Null che rappresenta il nome univoco e completo del tipo di carattere. Il nome contiene i nomi della famiglia e della sottofamiglia del tipo di carattere (ad esempio, "Times New Roman Bold").
dpwszUniqueName
Specifica l'offset in byte di una stringa Unicode con terminazione Null che rappresenta l'identificatore univoco del tipo di carattere, ad esempio "Monotype:Times New Roman:1990".
dpFontSim
Specifica l'offset in byte dall'inizio di questa struttura a una struttura FONTSIM che descrive le simulazioni supportate dal tipo di carattere. Il driver deve impostare questo membro su un valore diverso da zero solo se il tipo di carattere supporta simulazioni grassetto, corsivo o grassetto; in caso contrario, il driver deve impostare questo valore su zero.
Si noti che se un tipo di carattere è in corsivo per progettazione, il driver non deve indicare il supporto del tipo di carattere per la simulazione corsiva, anche se può indicare il supporto del tipo di carattere per la simulazione in corsivo grassetto. Analogamente, il driver non deve indicare il supporto del carattere per la simulazione in grassetto se il tipo di carattere è in grassetto per progettazione, ma può indicare il supporto del carattere per la simulazione in corsivo grassetto. Se il carattere è sia grassetto che corsivo per progettazione, non deve supportare alcuna simulazione.
Gli offset nella struttura FONTSIM sono relativi alla base della struttura FONTSIM.
lEmbedId
Specifica l'ID incorporamento del tipo di carattere. Questo valore è specifico di TrueType e deve essere impostato su zero da tutti gli altri provider di tipi di carattere.
lItalicAngle
Specifica l'angolo corsivo del tipo di carattere. Questo valore è specifico di TrueType e deve essere impostato su zero da tutti gli altri provider di tipi di carattere.
lCharBias
Specifica la distorsione del carattere. Questo valore è specifico di TrueType e deve essere impostato su zero da tutti gli altri provider di tipi di carattere.
dpCharSets
Specifica l'offset dall'inizio di questa struttura a una matrice contenente un elenco di tutti i set di caratteri di Windows supportati da questo tipo di carattere. La matrice è di 16 byte e viene sempre terminata con DEFAULT_CHARSET. Il primo valore della matrice deve identificare il set di caratteri di Windows con la copertura migliore e più completa nel tipo di carattere; questo valore deve essere archiviato anche in jWinCharSet. Ad esempio, se si tratta di un tipo di carattere giapponese che supporta anche set di caratteri ANSI e cirillico degli Stati Uniti, jWinCharSet deve essere impostato su SHIFTJIS_CHARSET e la matrice identificata da dpCharSets conterrà SHIFTJIS_CHARSET, ANSI_CHARSET, RUSSIAN_CHARSET DEFAULT_CHARSET.
Se questo tipo di carattere non supporta più set di caratteri di Windows, dpCharSets deve essere impostato su zero.
jWinCharSet
Identifica il set di caratteri più supportato da questo tipo di carattere. Se il tipo di carattere supporta solo un singolo set di caratteri di Windows, il driver deve archiviare il valore corrispondente in jWinCharSet. Il driver non deve archiviare DEFAULT_CHARSET in questo campo. Questo membro può essere uno dei valori seguenti:
Valore | Descrizione |
---|---|
ANSI_CHARSET | Questo tipo di carattere supporta il set di caratteri ANSI di Windows. |
ARABIC_CHARSET | Questo tipo di carattere supporta il set di caratteri arabo. |
BALTIC_CHARSET | Questo tipo di carattere supporta il set di caratteri baltici. |
CHINESEBIG5_CHARSET | Questo tipo di carattere supporta il set di caratteri cinese tradizionale (Big 5). |
EASTEUROPE_CHARSET | Questo tipo di carattere supporta il set di caratteri europa orientale. |
GB2312_CHARSET | Questo tipo di carattere supporta il set di caratteri cinese semplificato (PRC). |
GREEK_CHARSET | Questo tipo di carattere supporta il set di caratteri greco. |
HANGEUL_CHARSET | Questo tipo di carattere supporta il set di caratteri coreano (Hangul). |
HEBREW_CHARSET | Questo tipo di carattere supporta il set di caratteri ebraico. |
JOHAB_CHARSET | Questo tipo di carattere supporta il set di caratteri coreano (Johab). |
OEM_CHARSET | Questo tipo di carattere supporta un set di caratteri specifico dell'OEM. Il set di caratteri OEM dipende dal sistema. |
SHIFTJIS_CHARSET | Questo tipo di carattere supporta il set di caratteri Shift-JIS (Japanese Industry Standard). |
SYMBOL_CHARSET | Questo tipo di carattere supporta il set di caratteri dei simboli di Windows. |
RUSSIAN_CHARSET | Questo tipo di carattere supporta il set di caratteri cirillico. |
THAI_CHARSET | Questo tipo di carattere supporta il set di caratteri thai. |
TURKISH_CHARSET | Questo tipo di carattere supporta il set di caratteri turco. |
VIETNAMESE_CHARSET | Questo tipo di carattere supporta il set di caratteri vietnamita. |
jWinPitchAndFamily
Specifica il passo del tipo di carattere. I due bit di ordine basso specificano l'inclinazione del tipo di carattere e possono essere uno dei valori seguenti:
Valore | Descrizione |
---|---|
FIXED_PITCH | Per i tipi di carattere a passo fisso |
VARIABLE_PITCH | Per i tipi di carattere a passo variabile |
I bit da 4 a 7 di questo membro specificano la famiglia di caratteri e possono essere uno dei valori seguenti:
Valore | Descrizione |
---|---|
FF_DECORATIVE | Tipi di carattere novità, ad esempio Old English. |
FF_DONTCARE | Non importare o sconosciuto. |
FF_MODERN | Tipi di carattere con larghezza costante del tratto (a passo fisso), con o senza serif. I tipi di carattere a passo fisso sono in genere moderni, ad esempio Pica, Elite e Courier. |
FF_ROMAN | Tipi di carattere con larghezza del tratto variabile (proporzionalmente distanziati) e con serif, ad esempio Times Roman, Palatino e Century Schoolbook. |
FF_SCRIPT | Tipi di carattere progettati per essere simili alla grafia, ad esempio Script e Cursive. |
FF_SWISS | Tipi di carattere con larghezza a tratti variabile (proporzionalmente distanziati) e senza serif, ad esempio Helvetica e Swiss. |
usWinWeight
Specifica lo spessore del tipo di carattere compreso nell'intervallo compreso tra 0 e 1000 (ad esempio, 400 è normale e 700 è grassetto). Questo valore viene fornito all'applicazione nel membro lfWeight della struttura LOGFONT Win32.
flInfo
Specifica informazioni aggiuntive sul tipo di carattere. Questo campo può essere una combinazione dei valori flag seguenti:
Valore
Significato
FM_INFO_1BPP
Indica che una bitmap del glifo ha una profondità di colore di un bit per pixel. Per Windows NT 3.1, è necessario impostare questo flag per la prima versione di Windows NT.
FM_INFO_4BPP
Indica che una bitmap del glifo ha una profondità di colore di quattro bit per pixel. Il driver deve impostare questa impostazione se il tipo di carattere supporta bitmap glifi antialiased con 16 livelli di grigio.
FM_INFO_8BPP
Indica che una bitmap del glifo ha una profondità di colore di otto bit per pixel. La versione corrente di GDI ignorerà questa impostazione perché non supporta i tipi di carattere a colori.
FM_INFO_16BPP
Indica che una bitmap del glifo ha una profondità di colore di 16 bit per pixel. La versione corrente di GDI ignorerà questa impostazione perché non supporta i tipi di carattere a colori.
FM_INFO_24BPP
Indica che una bitmap del glifo ha una profondità di colore di 24 bit per pixel. La versione corrente di GDI ignorerà questa impostazione perché non supporta i tipi di carattere a colori.
FM_INFO_32BPP
Indica che una bitmap del glifo ha una profondità di colore di 32 bit per pixel. La versione corrente di GDI ignorerà questa impostazione perché non supporta i tipi di carattere a colori.
FM_INFO_90DEGREE_ROTATIONS
Indica che il tipo di carattere può essere realizzato in rotazioni di 90 gradi della forma notzionale originale. GDI richiede la rotazione di un tipo di carattere includendo la rotazione nella trasformazione notzionale del dispositivo passata al driver durante la creazione del tipo di carattere. Questo membro ha un significato solo quando il flag di FM_INFO_ARB_XFORMS non è stato impostato.
FM_INFO_ANISOTROPIC_SCALING_ONLY
Indica che il tipo di carattere supporta solo la scalabilità anisotropica arbitraria. Ovvero, le trasformazioni sono equivalenti a una matrice diagonale moltiplicata per un numero reale positivo. Se questo flag è impostato, non è possibile impostare il FM_INFO_ARB_XFORMS e i flag FM_INFO_ISOTROPIC_SCALING_ONLY. Se viene impostato anche il flag FM_INFO_90DEGREE_ROTATIONS, il tipo di carattere supporta trasformazioni che sono una combinazione di una semplice scala anisotropica seguita da una rotazione di più di 90 gradi.
FM_INFO_ARB_XFORMS
Indica che un tipo di carattere può essere realizzato in un intervallo continuo di trasformazioni lineari bidimensionali.
FM_INFO_CONSTANT_WIDTH
Indica che tutti i glifi del tipo di carattere in tutte le realizzazioni hanno lo stesso valore di incremento di caratteri. Se questo flag è impostato, è necessario impostare anche il flag FM_INFO_OPTICALLY_FIXED_PITCH.
FM_INFO_DBCS_FIXED_PITCH
Indica che i caratteri a byte doppio per questo tipo di carattere sono a passo fisso. Nulla è implicito sui caratteri a byte singolo. Questo flag è significativo solo per i tipi di carattere che supportano un set di caratteri a byte doppio ( DBCS), ad esempio SHIFT JIS. I tipi di carattere che non supportano un DBCS non devono impostare questo flag.
FM_INFO_DO_NOT_ENUMERATE
Indica che questo tipo di carattere non verrà enumerato dalle routine di EnumFontFamiliesEx, EnumFontFamilies o EnumFonts. Inoltre, la stringa restituita a una chiamata dell'applicazione Win32 a GetTextFace verrà recuperata dalla stringa dpwszUniqueName. Questo flag consente al provider di tipi di carattere di associare più di un PRINTIFI32 struttura a uno dei relativi tipi di carattere.
FM_INFO_DSIG
Indica che un tipo di carattere è conforme allo standard Unicode.
FM_INFO_FAMILY_EQUIV
Indica che l'offset dpwszFamilyName in PRINTIFI32 è effettivamente l'offset a un elenco di nomi o alias di famiglia equivalenti. Il nome è la base o il nome reale; i nomi successivi sono equivalenti o alias. Ogni nome nell'elenco è con terminazione null; l'elenco viene terminato da due zeri.
<base name> <alias 0> <alias 1> ... <alias n>
I nomi basati vengono usati solo per il mapping; non sono enumerati.
FM_INFO_IGNORE_TC_RA_ABLE
Indica che, per questo tipo di carattere, il flag TC_RA_ABLE viene ignorato.
FM_INFO_INTEGER_WIDTH
Indica che tutti i glifi hanno larghezze di avanzamento nonfrazionali. I tipi di carattere bitmap in genere impostano questo flag.
FM_INFO_INTEGRAL_SCALING
Indica che il tipo di carattere può essere ridimensionato in base a una quantità integrale nelle direzioni x e y. Se questo flag è impostato, il driver deve essere in grado di eseguire il rendering dei glifi nel caso in cui la trasformazione notzionale del dispositivo venga ridimensionata in base agli importi integrali nelle direzioni x e y. GDI richiede il ridimensionamento integrale di un tipo di carattere includendo le proporzioni assiali nella trasformazione notzionale del dispositivo passato al driver durante la creazione del tipo di carattere. Questo flag è significativo solo quando il flag FM_INFO_ARB_XFORMS non è stato impostato.
FM_INFO_ISOTROPIC_SCALING_ONLY
Indica che il tipo di carattere supporta solo la scalabilità isotropica arbitraria. Ovvero, le trasformazioni sono equivalenti alla matrice di identità moltiplicata per un numero reale positivo. Se questo flag è impostato, non è possibile impostare né il FM_INFO_ARB_XFORMS né i flag FM_INFO_ANISOTROPIC_SCALING_ONLY. Se il flag FM_INFO_90DEGREE_ROTATIONS è impostato, il tipo di carattere supporta trasformazioni equivalenti a un ridimensionamento isotropico seguito da una rotazione di più di 90 gradi.
FM_INFO_OPTICALLY_FIXED_PITCH
Indica che questo tipo di carattere viene considerato tipografico come passo fisso. Si tratta di una qualità ottica del tipo di carattere e non indica necessariamente che tutti i glifi del tipo di carattere hanno lo stesso incremento di carattere.
FM_INFO_NONNEGATIVE_AC
Indica che tutti i glifi di questo tipo di carattere hanno una spaziatura e c. Ovvero, la casella nera del glifo non si estende mai all'esterno dell'area delimitata dall'origine del carattere e dal punto di concatenazione dei caratteri.
FM_INFO_NOT_CONTIGUOUS
Indica che il set di caratteri supportato non è contiguo.
FM_INFO_RETURNS_BITMAPS
Indica che il tipo di carattere contiene una firma digitale valida.
FM_INFO_RETURNS_OUTLINES
Indica che per qualsiasi glifo supportato dal driver, GDI può richiedere una struttura PATHOBJ che descrive il contorno di tale glifo. Se possibile, quando la struttura viene riempita usando le convenzioni di riempimento del percorso di GDI, la bitmap risultante deve essere identica alla bitmap restituita dal driver. I flag FM_INFO_RETURNS_OUTLINES e FM_INFO_RETURNS_STOKES non possono essere impostati contemporaneamente.
FM_INFO_RETURNS_STROKES
Indica che per qualsiasi glifo supportato dai driver, GDI può richiedere una struttura PATHOBJ che descrive la spline del glifo. Questo percorso non può essere riempito ma può essere tracciato per dare una rappresentazione del glifo. I flag FM_INFO_RETURNS_OUTLINES e FM_INFO_RETURNS_STOKES non possono essere impostati contemporaneamente.
FM_INFO_RIGHT_HANDED
Indica che la direzione di salita del tipo di carattere è di 90 gradi in senso antiorario dalla direzione di base. La direzione di salita è la direzione lungo la quale viene misurata l'altezza ed è sempre perpendicolare alla direzione di base.
FM_INFO_TECH_BITMAP
Indica che il tipo di carattere è un tipo di carattere bitmap.
FM_INFO_TECH_CFF
Indica che il tipo di carattere è un tipo di carattere Pscript OpenType che contiene una tabella CFF (Compact Font Format).
FM_INFO_TECH_MM
Indica che si tratta di un tipo di carattere Mm (Multiple Master).
FM_INFO_TECH_OUTLINE_NOT_TRUETYPE
Indica che il tipo di carattere è basato su una tecnologia dei tipi di carattere scalabile che utilizza i percorsi di struttura, ma non è basata su TrueType. Questo flag non specifica se i percorsi restituiti per questo tipo di carattere devono essere riempiti o tracciati; Il consumer deve esaminare i flag FM_INFO_RETURNS_STROKES e FM_INFO_RETURNS_OUTLINES per queste informazioni.
FM_INFO_TECH_STROKE
Indica che il tipo di carattere è basato su una tecnologia del tipo di carattere con tratti. Questo flag non specifica se i percorsi restituiti per questo tipo di carattere devono essere riempiti o tracciati; Il consumer deve esaminare i flag FM_INFO_RETURNS_STROKES e FM_INFO_RETURNS_OUTLINES per queste informazioni.
FM_INFO_TECH_TRUETYPE
Indica che il tipo di carattere è un tipo di carattere TrueType.
FM_INFO_TECH_TYPE1
Indica che questo tipo di carattere è un tipo di carattere della schermata PostScript (Type1 o OpenType PostScript).
fsSelection
Specifica una combinazione dei flag seguenti:
Valore | Descrizione |
---|---|
FM_SEL_BOLD | Impostare se i caratteri del tipo di carattere sono in grassetto. |
FM_SEL_ITALIC | Impostare se i caratteri del tipo di carattere sono in corsivo. |
FM_SEL_NEGATIVE | Impostare se i caratteri del tipo di carattere hanno il primo piano e lo sfondo invertito. |
FM_SEL_OUTLINED | Impostare se i caratteri del tipo di carattere sono vuoti. |
FM_SEL_REGULAR | Impostare se i caratteri del tipo di carattere sono normali. |
FM_SEL_STRIKEOUT | Impostare se i caratteri del tipo di carattere vengono evidenziati per impostazione predefinita; in caso contrario, gli scioperi devono essere simulati. |
FM_SEL_UNDERSCORE | Imposta se tutti i caratteri del tipo di carattere sono sottolineati per impostazione predefinita; in caso contrario, è necessario simulare la sottolineatura. |
fsType
Si tratta di un campo di bit specifico di TrueType che indica determinate proprietà per il tipo di carattere, ad esempio l'incorporamento del tipo di carattere e i diritti di licenza per il tipo di carattere. I tipi di carattere incorporabili possono essere archiviati in un documento. Quando un documento con tipi di carattere incorporati viene aperto in un sistema in cui non è installato il tipo di carattere (sistema remoto), il tipo di carattere incorporato può essere caricato per l'uso temporaneo (e in alcuni casi permanente) su tale sistema da parte di un'applicazione in grado di incorporare. I diritti di licenza di incorporamento vengono concessi dal fornitore del tipo di carattere. È possibile impostare i flag seguenti:
Valore | Descrizione |
---|---|
FM_EDITABLE_EMBED | Impostare se il tipo di carattere può essere incorporato e caricato temporaneamente in altri sistemi. I documenti contenenti tipi di carattere modificabili possono essere aperti per la lettura e la scrittura. |
FM_READONLY_EMBED | Impostare se l'incorporamento di lettura/scrittura non è consentito; è consentita solo l'incapsulamento "anteprima e stampa". Quando questo bit è impostato, il tipo di carattere può essere incorporato e caricato temporaneamente nel sistema remoto. I documenti contenenti tipi di carattere "anteprima e stampa" devono essere aperti "di sola lettura;" non è possibile applicare modifiche al documento. |
FM_TYPE_LICENSED, FM_NO_EMBEDDING | Impostare se il tipo di carattere è un tipo di carattere Licenza con restrizioni. Quando viene impostato solo questo bit, questo tipo di carattere non deve essere modificato, incorporato o scambiato in alcun modo senza prima ottenere l'autorizzazione del proprietario legale. Per rendere effettivo l'incorporamento delle licenze con restrizioni, deve essere l'unico livello di incorporamento selezionato. |
I tipi di carattere con il set di bit FM_READONLY_EMBED indicano che possono essere incorporati all'interno dei documenti, ma devono essere installati solo temporaneamente nel sistema remoto. Qualsiasi documento che include un tipo di carattere FM_READONLY_EMBED deve essere aperto "di sola lettura". Ovvero, l'applicazione può consentire all'utente di visualizzare e/o stampare il documento, ma non modificarlo.
I tipi di carattere con il set di bit FM_EDITABLE_EMBED indicano che possono essere incorporati nei documenti, ma devono essere installati solo temporaneamente nel sistema remoto. A differenza di FM_READONLY_EMBED tipi di carattere, è possibile aprire i documenti contenenti tipi di carattere modificabili "lettura/scrittura;" ed è possibile salvare le modifiche.
I tipi di carattere senza fsType bit impostati indicano che possono essere incorporati e installati in modo permanente nel sistema remoto da un'applicazione. L'utente del sistema remoto acquisisce gli stessi diritti, obblighi e licenze per tale tipo di carattere come acquirente originale del tipo di carattere ed è soggetto allo stesso contratto di licenza dell'utente finale, copyright, brevetto di progettazione e/o marchio come l'acquirente originale.
Le applicazioni che implementano il supporto per l'incorporamento dei tipi di carattere, tramite l'uso della DLL di incorporamento dei tipi di carattere o tramite altri mezzi, non devono incorporare tipi di carattere non concessi in licenza per consentire l'incorporamento. Inoltre, le applicazioni che caricano tipi di carattere incorporati per l'uso temporaneo devono eliminare i tipi di carattere quando il documento contenente il tipo di carattere incorporato viene chiuso.
Se vengono impostati più bit di incorporamento, la licenza meno restrittiva concessa ha la precedenza. Ad esempio, se vengono impostati bit 1 e 3, bit 3 ha la precedenza su bit 1 e il tipo di carattere può essere incorporato con diritti modificabili. Ai fini della compatibilità, la maggior parte dei fornitori che concedono diritti di incorporamento modificabili imposta anche l'anteprima & bit di stampa (0x000C). Ciò consente a un'applicazione che supporta solo l'incorporamento anteprima & stampa per rilevare che l'incorporamento dei tipi di carattere è consentito.
fwdUnitsPerEm
Specifica l'altezza em del tipo di carattere.
fwdLowestPPEm
Specifica le dimensioni più piccole leggibili del tipo di carattere, in pixel. Questo valore viene ignorato per i tipi di carattere bitmap.
fwdWinAscender
Specifica il valore crescente di Windows per il tipo di carattere.
fwdWinDescender
Specifica il valore discendente di Windows per il tipo di carattere.
fwdMacAscender
Specifica il valore crescente macintosh per il tipo di carattere.
fwdMacDescender
Specifica il valore del discendente Macintosh per il tipo di carattere. Questo numero è in genere minore di zero. Misura lo spostamento con segno dalla linea di base del discendente più basso nel set di caratteri Macintosh.
fwdMacLineGap
Specifica lo spazio di riga Macintosh per il tipo di carattere. La spaziatura interlinea macintosh suggerita è uguale a fwdMacLineGap + fwdMacAscender âˆ' fwdMacDescender.
fwdTypoAscender
Specifica il valore ascendente tipografico per il tipo di carattere.
fwdTypoDescender
Specifica il valore del discendente tipografico per il tipo di carattere. Questo valore specifica lo spostamento con segno del discendente più basso dalla linea di base.
fwdTypoLineGap
Specifica lo spazio di linea tipografico per il tipo di carattere.
fwdAveCharWidth
Specifica la media aritmetica della larghezza di tutte le 26 lettere minuscole 'a' e 'z' dell'alfabeto latino e del carattere spazio. Se una qualsiasi delle 26 lettere minuscole non è presente, questo membro deve essere impostato uguale alla media ponderata di tutti i glifi nel tipo di carattere.
fwdMaxCharInc
Specifica l'incremento massimo di caratteri di tutti i glifi nel tipo di carattere.
fwdCapHeight
Specifica l'altezza della linea ottica che descrive la parte superiore della "H" maiuscola in unità di carattere (FUnits). Questo potrebbe non corrispondere all'altezza misurata della 'H'. Se queste informazioni non esistono, fwdCapHeight deve essere impostata su zero, che indica che non è definita.
fwdXHeight
Specifica l'altezza della linea ottica che descrive l'altezza della "x" minuscola in unità di carattere. Questo potrebbe non corrispondere all'altezza misurata della "x". Un valore pari a zero indica che questo membro non è definito.
fwdSubscriptXSize
Specifica la larghezza del carattere suggerita (la dimensione lungo la direzione di base) del tipo di carattere pedice.
fwdSubscriptYSize
Specifica l'altezza del carattere suggerita (la dimensione lungo la direzione crescente) del tipo di carattere pedice.
fwdSubscriptXOffset
Specifica l'offset suggerito nella direzione di base del carattere pedice. L'offset è relativo all'origine del carattere del carattere di base.
fwdSubscriptYOffset
Specifica l'offset suggerito nella direzione di base del carattere pedice. L'offset viene ricavato dall'origine del carattere del carattere di base.
fwdSuperscriptXSize
Specifica la larghezza del carattere suggerita (la dimensione lungo la direzione di base) del tipo di carattere apice.
fwdSuperscriptYSize
Specifica l'altezza del carattere suggerita (la dimensione lungo la direzione crescente) del tipo di carattere apice.
fwdSuperscriptXOffset
Specifica l'offset suggerito nella direzione di base del carattere apice. L'offset viene ricavato dall'origine del carattere del carattere di base.
fwdSuperscriptYOffset
Specifica l'offset suggerito nella direzione di base del carattere apice. L'offset viene ricavato dall'origine del carattere del carattere di base.
fwdUnderscoreSize
Specifica la larghezza suggerita della barra di sottolineatura, in unità di carattere.
fwdUnderscorePosition
Specifica lo spostamento suggerito, in unità di carattere, dalla linea di base al centro della barra di sottolineatura.
fwdStrikeoutSize
Specifica la larghezza suggerita della barra barrata, nelle coordinate del tipo di carattere.
fwdStrikeoutPosition
Specifica lo spostamento suggerito del centro della barra di barra di attacco dalla linea di base.
chFirstChar
Specifica il carattere supportato più basso nella tabella codici specificata in jWinCharSet. Questo campo è disponibile per la compatibilità di Windows 3.1.
chLastChar
Specifica il carattere supportato più alto nella tabella codici specificata in jWinCharSet. Questo campo è disponibile per la compatibilità di Windows 3.1.
chDefaultChar
Specifica il carattere predefinito nella tabella codici specificata in jWinCharSet. Questo campo è disponibile per la compatibilità di Windows 3.1.
chBreakChar
Specifica il carattere di interruzione nella tabella codici specificata in jWinCharSet. Questo campo è disponibile per la compatibilità di Windows 3.1.
wcFirstChar
Specifica il carattere supportato con il codice carattere Unicode più piccolo.
wcLastChar
Specifica il carattere supportato con il codice carattere Unicode più grande.
wcDefaultChar
Specifica il carattere da sostituire quando un'applicazione richiede un carattere non supportato dal tipo di carattere.
wcBreakChar
Specifica il punto di codice del carattere spazio o il relativo equivalente.
ptlBaseline
Specifica una struttura POINTL che contiene la direzione di scrittura prevista del tipo di carattere. Ad esempio, un tipo di carattere latino tipico specifica il valore (1,0).
ptlAspect
Specifica una struttura POINTL che contiene le proporzioni dei centri pixel per cui è stato progettato il tipo di carattere bitmap. Questo valore viene utilizzato solo dai tipi di carattere bitmap.
ptlCaret
Specifica una struttura POINTL che contiene la direzione crescente del tipo di carattere. Ad esempio, il valore di un tipo di carattere latino nonitalico è (0,1) mentre un tipo di carattere latino in corsivo potrebbe specificare il valore (2,5).
rclFontBox
Specifica una struttura RECTL che descrive il rettangolo di selezione di tutti i glifi nello spazio di progettazione.
achVendId[4]
Specifica un identificatore di quattro caratteri per il fornitore del tipo di carattere. Gli identificatori sono documentati nella specifica Microsoft TrueType.
cKerningPairs
Specifica il numero di coppie di crenatura associate al tipo di carattere.
ulPanoseCulture
Specifica il modo in cui interpretare il numero panose. Questo numero deve essere impostato su FM_PANOSE_CULTURE_LATIN per i tipi di carattere basati su alfabeto latino. Per informazioni sulla struttura PANOSE, vedere la documentazione di Microsoft Window SDK.
panose
Matrice di 10 byte utilizzata per descrivere le caratteristiche visive di un carattere tipografico specificato. Queste caratteristiche vengono quindi utilizzate per associare il tipo di carattere ad altri tipi di carattere di aspetto simile con nomi diversi. Per informazioni sulla struttura PANOSE, vedere la documentazione di Window SDK.
Osservazioni
La struttura PRINTIFI32 è disponibile in Windows Server 2003 SP1 e versioni successive. Poiché questa struttura è di dimensioni fisse e non è garantita la modifica tra architetture o versioni del sistema operativo, può essere usata per i layout di file binari. I file UFM unidrv sono disposti nel formato descritto in questa struttura, per tutte le piattaforme. I file NTF Pscript5 usano la versione specifica della piattaforma di questa struttura.
È possibile specificare informazioni aggiuntive per un carattere tipografico nella struttura IFIEXTRA.
Un driver DrvQueryFont routine compila e restituisce una struttura IFIMETRICS a GDI.
La struttura PRINTIFI32 definisce tutte le informazioni relative a un carattere tipografico compreso da GDI. La maggior parte dei membri sono valori FWORD, che sono quantità a 16 bit con segno nello spazio di progettazione. Se il tipo di carattere è un tipo di carattere raster, lo spazio di progettazione e lo spazio del dispositivo sono uguali e un'unità di carattere equivale alla distanza tra pixel.
Il sistema di coordinate nello spazio carattere/notionale è tale che la coordinata y aumenta in direzione verso l'alto e la coordinata x aumenta a destra.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | prntfont.h (include Prntfont.h) |