Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die PRINTIFI32-Struktur ist eine Version mit fester Größe der IFIMETRICS- Struktur und definiert Informationen für eine bestimmte Schriftart, die GDI verwenden kann.
Syntax
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;
Angehörige
cjThis
Gibt die Größe in Byte dieser Struktur an. Die angegebene Größe enthält alle an das Ende dieser Struktur angefügten Unicode-Zeichenfolgen sowie die Größe in Byte der optionalen IFIEXTRA--Struktur.
cjIfiExtra
Gibt die Größe in Byte der IFIEXTRA-Struktur an, die auf diese Struktur folgt. Ein Wert von Null gibt an, dass keine IFIEXTRA-Struktur vorhanden ist.
dpwszFamilyName
Gibt den Offset in Bytes auf eine mit Null beendete Unicode-Zeichenfolge an, die den Familiennamen der Schriftart enthält (z. B. "Times Roman"). Im Allgemeinen folgt diese Zeichenfolge sofort dieser Struktur. Diese Zeichenfolge sollte mit dem Namen übereinstimmen, der im lfFaceName Member der Win32 LOGFONT-Struktur aufgezeichnet wird.
dpwszStyleName
Gibt den Offset in Bytes auf eine mit Null beendete Unicode-Zeichenfolge an, die den Schriftschnitt beschreibt (z. B. "Bold").
dpwszFaceName
Gibt den Offset in Byte auf eine mit Null beendete Unicode-Zeichenfolge an, die den eindeutigen und vollständigen Namen der Schriftart darstellt. Der Name enthält die Familien- und Unterfamiliennamen der Schriftart (z. B. "Times New Roman Bold").
dpwszUniqueName
Gibt den Offset in Bytes auf eine mit Null beendete Unicode-Zeichenfolge an, die den eindeutigen Bezeichner der Schriftart darstellt (z. B. "Monotype:Times New Roman:1990").
dpFontSim
Gibt den Offset in Byte vom Anfang dieser Struktur auf eine FONTSIM- Struktur an, die die von der Schriftart unterstützten Simulationen beschreibt. Der Treiber sollte dieses Element nur dann auf einen Wert ungleich Null festlegen, wenn die Schriftart fett, kursiv oder kursiv formatierte Simulationen unterstützt; andernfalls sollte der Treiber dies auf Null festlegen.
Beachten Sie, dass der Treiber, wenn eine Schriftart kursiv formatiert ist, keine Schriftunterstützung für kursive Simulationen angeben sollte, obwohl sie die Schriftartunterstützung für eine fett kursive Simulation angeben kann. Ebenso sollte der Treiber keine Schriftartunterstützung für fett formatierte Simulationen angeben, wenn die Schriftart vom Entwurf fett formatiert ist, aber die Schriftartunterstützung für eine fett kursive Simulation angeben kann. Wenn die Schriftart sowohl fett als auch kursiv formatiert ist, sollte sie keine Simulationen unterstützen.
Die Offsets in der FONTSIM Struktur sind relativ zur Basis der FONTSIM-Struktur.
lEmbedId
Gibt die Einbettungs-ID der Schriftart an. Dieser Wert ist TrueType-spezifisch und sollte von allen anderen Schriftartanbietern auf Null festgelegt werden.
lItalicAngle
Gibt den Kursivwinkel der Schriftart an. Dieser Wert ist TrueType-spezifisch und sollte von allen anderen Schriftartanbietern auf Null festgelegt werden.
lCharBias
Gibt die Zeichenverzerrung an. Dieser Wert ist TrueType-spezifisch und sollte von allen anderen Schriftartanbietern auf Null festgelegt werden.
dpCharSets
Gibt den Offset vom Anfang dieser Struktur zu einem Array an, das eine Liste aller Windows-Zeichensätze enthält, die von dieser Schriftart unterstützt werden. Das Array ist 16 Byte groß und wird immer mit DEFAULT_CHARSET beendet. Der erste Wert des Arrays sollte den Windows-Zeichensatz identifizieren, der die beste und umfassendste Abdeckung in der Schriftart aufweist; Dieser Wert sollte auch in jWinCharSetgespeichert werden. Wenn dies beispielsweise eine japanische Schriftart ist, die auch US-ANSI- und Kyrillische Zeichensätze unterstützt, sollte jWinCharSet- auf SHIFTJIS_CHARSET festgelegt werden und das array, das durch dpCharSets identifiziert wird, SHIFTJIS_CHARSET, ANSI_CHARSET, RUSSIAN_CHARSET, DEFAULT_CHARSET enthalten.
Wenn diese Schriftart nicht mehr als einen Windows-Zeichensatz unterstützt, sollte dpCharSets- auf Null festgelegt werden.
jWinCharSet
Identifiziert den von dieser Schriftart am besten unterstützten Zeichensatz. Wenn die Schriftart nur einen einzelnen Windows-Zeichensatz unterstützt, sollte der Treiber den entsprechenden Wert in jWinCharSet-speichern. Der Treiber sollte DEFAULT_CHARSET nicht in diesem Feld speichern. Dieses Element kann einer der folgenden Werte sein:
Wert | Beschreibung |
---|---|
ANSI_CHARSET | Diese Schriftart unterstützt den Windows ANSI-Zeichensatz. |
ARABIC_CHARSET | Diese Schriftart unterstützt den arabischen Zeichensatz. |
BALTIC_CHARSET | Diese Schriftart unterstützt den Baltischen Zeichensatz. |
CHINESEBIG5_CHARSET | Diese Schriftart unterstützt den traditionellen chinesischen Zeichensatz (Big 5). |
EASTEUROPE_CHARSET | Diese Schriftart unterstützt den osteuropäischen Zeichensatz. |
GB2312_CHARSET | Diese Schriftart unterstützt den chinesischen Zeichensatz (vereinfacht) (PRC). |
GREEK_CHARSET | Diese Schriftart unterstützt den griechischen Zeichensatz. |
HANGEUL_CHARSET | Diese Schriftart unterstützt den Koreanischen Zeichensatz (Hangul). |
HEBREW_CHARSET | Diese Schriftart unterstützt den hebräischen Zeichensatz. |
JOHAB_CHARSET | Diese Schriftart unterstützt den Koreanischen Zeichensatz (Johab). |
OEM_CHARSET | Diese Schriftart unterstützt einen OEM-spezifischen Zeichensatz. Der OEM-Zeichensatz ist vom System abhängig. |
SHIFTJIS_CHARSET | Diese Schriftart unterstützt den Zeichensatz Shift-JIS (Japanese Industry Standard). |
SYMBOL_CHARSET | Diese Schriftart unterstützt den Windows-Symbolzeichensatz. |
RUSSIAN_CHARSET | Diese Schriftart unterstützt den kyrillischen Zeichensatz. |
THAI_CHARSET | Diese Schriftart unterstützt den thailändischen Zeichensatz. |
TURKISH_CHARSET | Diese Schriftart unterstützt den türkischen Zeichensatz. |
VIETNAMESE_CHARSET | Diese Schriftart unterstützt den vietnamesischen Zeichensatz. |
jWinPitchAndFamily
Gibt den Schriftgrad der Schriftart an. Die beiden Bits mit niedriger Reihenfolge geben den Schriftgrad an und können einen der folgenden Werte aufweisen:
Wert | Beschreibung |
---|---|
FIXED_PITCH | Für Schriftarten mit fester Neigung |
VARIABLE_PITCH | Für Schriftarten mit variabler Neigung |
Bits 4 bis 7 dieses Mitglieds geben die Schriftartfamilie an und können einen der folgenden Werte aufweisen:
Wert | Beschreibung |
---|---|
FF_DECORATIVE | Neuheitsschriftarten, z. B. Old English. |
FF_DONTCARE | Keine Sorge oder unbekannt. |
FF_MODERN | Schriftarten mit konstanter Strichbreite (fester Neigung), mit oder ohne Serifen. Schriftarten mit fester Neigung sind in der Regel modern, z. B. Pica, Elite und Courier. |
FF_ROMAN | Schriftarten mit variabler Strichbreite (proportionaler Abstand) und mit Serifen, z. B. Times Roman, Palatino und Century Schoolbook. |
FF_SCRIPT | Schriftarten, die wie Handschrift aussehen sollen, z. B. "Skript" und "Cursive". |
FF_SWISS | Schriftarten mit variabler Strichbreite (proportionaler Abstand) und ohne Serifen, z. B. Helvetica und Swiss. |
usWinWeight
Gibt die Stärke der Schriftart im Bereich von 0 bis 1000 an (z. B. 400 ist normal und 700 fett). Dieser Wert wird der Anwendung im lfWeight Member der Win32 LOGFONT-Struktur bereitgestellt.
flInfo
Gibt zusätzliche Informationen zur Schriftart an. Dieses Feld kann eine Kombination aus den folgenden Flagwerten sein:
Wert
Bedeutung
FM_INFO_1BPP
Gibt an, dass eine Glyphenbitmap eine Farbtiefe von einem Bit pro Pixel aufweist. Für Windows NT 3.1 muss die erste Version von Windows NT festgelegt werden.
FM_INFO_4BPP
Gibt an, dass eine Glyphenbitmap eine Farbtiefe von vier Bits pro Pixel aufweist. Der Treiber sollte dies festlegen, wenn die Schriftart antialiasierte Glyphenbitmaps mit 16 Graustufen unterstützt.
FM_INFO_8BPP
Gibt an, dass eine Glyphenbitmap eine Farbtiefe von acht Bit pro Pixel aufweist. Die aktuelle Version von GDI ignoriert diese Einstellung, da sie keine Farbschriftarten unterstützt.
FM_INFO_16BPP
Gibt an, dass eine Glyphenbitmap eine Farbtiefe von 16 Bit pro Pixel aufweist. Die aktuelle Version von GDI ignoriert diese Einstellung, da sie keine Farbschriftarten unterstützt.
FM_INFO_24BPP
Gibt an, dass eine Glyphenbitmap eine Farbtiefe von 24 Bit pro Pixel aufweist. Die aktuelle Version von GDI ignoriert diese Einstellung, da sie keine Farbschriftarten unterstützt.
FM_INFO_32BPP
Gibt an, dass eine Glyphenbitmap eine Farbtiefe von 32 Bit pro Pixel aufweist. Die aktuelle Version von GDI ignoriert diese Einstellung, da sie keine Farbschriftarten unterstützt.
FM_INFO_90DEGREE_ROTATIONS
Gibt an, dass die Schriftart in 90-Grad-Drehungen der ursprünglichen notionalen Form realisiert werden kann. GDI fordert die Drehung einer Schriftart an, indem beim Erstellen der Schriftart die Drehung in den Notionalen für die Gerätetransformation eingeschlossen wird, die an den Treiber übergeben wird. Dieses Element hat nur dann Bedeutung, wenn das FM_INFO_ARB_XFORMS Flag nicht festgelegt wurde.
FM_INFO_ANISOTROPIC_SCALING_ONLY
Gibt an, dass die Schriftart nur eine beliebige anisotrope Skalierung unterstützt. Das heißt, Transformationen entsprechen einer diagonalen Matrix, die mit einer positiven reellen Zahl multipliziert wird. Wenn diese Kennzeichnung festgelegt ist, können die FM_INFO_ARB_XFORMS und die FM_INFO_ISOTROPIC_SCALING_ONLY Flags nicht festgelegt werden. Wenn auch das FM_INFO_90DEGREE_ROTATIONS Flag festgelegt ist, unterstützt die Schriftart Transformationen, die eine Kombination aus einer einfachen anisotropen Skalierung sind, gefolgt von einer Drehung um ein Vielfaches von 90 Grad.
FM_INFO_ARB_XFORMS
Gibt an, dass eine Schriftart unter einem fortlaufenden Bereich von zweidimensionalen linearen Transformationen realisiert werden kann.
FM_INFO_CONSTANT_WIDTH
Gibt an, dass alle Glyphen der Schriftart unter allen Realisierungen den gleichen Wert des Zeicheninkrements aufweisen. Wenn dieses Kennzeichen festgelegt ist, muss auch das FM_INFO_OPTICALLY_FIXED_PITCH Flag festgelegt werden.
FM_INFO_DBCS_FIXED_PITCH
Gibt an, dass Doppelbytezeichen für diese Schriftart feste Neigungen aufweisen. Es wird nichts mit einzelnen Bytezeichen impliziert. Dieses Kennzeichen ist nur für Schriftarten sinnvoll, die einen Double-Byte-Zeichensatz (DBCS) unterstützen, z. B. Umschalt-JIS. Schriftarten, die kein DBCS unterstützen, sollten dieses Kennzeichen nicht festlegen.
FM_INFO_DO_NOT_ENUMERATE
Gibt an, dass diese Schriftart nicht von der Win32 EnumFontFamiliesEx, EnumFontFamilies oder EnumFonts Routinen aufgezählt wird. Darüber hinaus wird die Zeichenfolge, die an einen Win32-Anwendungsaufruf an GetTextFace- zurückgegeben wird, aus der Zeichenfolge dpwszUniqueNameabgerufen. Mit dieser Kennzeichnung kann der Schriftartanbieter mehreren PRINTIFI32 Struktur eine seiner Schriftarten zuordnen.
FM_INFO_DSIG
Gibt an, dass eine Schriftart mit dem Unicode-Standard kompatibel ist.
FM_INFO_FAMILY_EQUIV
Gibt an, dass der dpwszFamilyName Offset in PRINTIFI32 tatsächlich der Offset einer Liste der entsprechenden Familiennamen oder Aliase ist. Der Vorname ist der Basis- oder Realname; die nachfolgenden Namen sind Entsprechungen oder Aliase. Jeder Name in der Liste wird null beendet; die Liste wird durch zwei Nullen beendet.
<base name> <alias 0> <alias 1> ... <alias n>
Die basierenden Namen werden nur für die Zuordnung verwendet; sie werden nicht aufgezählt.
FM_INFO_IGNORE_TC_RA_ABLE
Gibt an, dass für diese Schriftart das TC_RA_ABLE Flag ignoriert wird.
FM_INFO_INTEGER_WIDTH
Gibt an, dass alle Glyphen über nichtfractionale Vorlaufbreiten verfügen. Bitmapschriftarten legen diese Kennzeichnung in der Regel fest.
FM_INFO_INTEGRAL_SCALING
Gibt an, dass die Schriftart in x- und y-Richtung um einen integralen Betrag skaliert werden kann. Wenn dieses Kennzeichen festgelegt ist, muss der Treiber Glyphen rendern können, wenn die Schreibung für die Gerätetransformation durch integrale Mengen in den x- und y-Richtungen skaliert wird. GDI fordert die integrale Skalierung einer Schriftart an, indem beim Erstellen der Schriftart die Achsenskalierungen in den Notionalen der Gerätetransformation an den Treiber übergeben werden. Dieses Kennzeichen ist nur dann sinnvoll, wenn das FM_INFO_ARB_XFORMS Flag nicht festgelegt wurde.
FM_INFO_ISOTROPIC_SCALING_ONLY
Gibt an, dass die Schriftart nur eine beliebige isotrope Skalierung unterstützt. Das heißt, Transformationen entsprechen der Identitätsmatrix, die mit einer positiven reellen Zahl multipliziert wird. Wenn diese Kennzeichnung festgelegt ist, können weder die FM_INFO_ARB_XFORMS noch die FM_INFO_ANISOTROPIC_SCALING_ONLY Flags festgelegt werden. Wenn das FM_INFO_90DEGREE_ROTATIONS Flag festgelegt ist, unterstützt die Schriftart Transformationen, die einer isotropen Skalierung entsprechen, gefolgt von einer Drehung um ein Vielfaches von 90 Grad.
FM_INFO_OPTICALLY_FIXED_PITCH
Gibt an, dass diese Schriftart typografielogisch als feste Neigung betrachtet wird. Dies ist eine optische Qualität der Schriftart und weist nicht unbedingt darauf hin, dass alle Glyphen der Schriftart denselben Zeichenschritt aufweisen.
FM_INFO_NONNEGATIVE_AC
Gibt an, dass alle Glyphen dieser Schriftart nicht einen und c Abstand aufweisen. Das heißt, das schwarze Feld der Glyphe erstreckt sich nie außerhalb des Bereichs, der durch den Zeichenursprung und den Zeichenverkettungspunkt umgeben ist.
FM_INFO_NOT_CONTIGUOUS
Gibt an, dass der unterstützte Zeichensatz nicht zusammenhängend ist.
FM_INFO_RETURNS_BITMAPS
Gibt an, dass die Schriftart eine gültige digitale Signatur enthält.
FM_INFO_RETURNS_OUTLINES
Gibt an, dass GDI für jede vom Treiber unterstützte Glyphe eine PATHOBJ- Struktur anfordern kann, die die Gliederung dieser Glyphe beschreibt. Wenn die Gliederung nach Möglichkeit mit den Pfadfüllkonventionen von GDI gefüllt wird, sollte die resultierende Bitmap mit der vom Treiber zurückgegebenen Bitmap identisch sein. Die Flags FM_INFO_RETURNS_OUTLINES und FM_INFO_RETURNS_STOKES können nicht gleichzeitig festgelegt werden.
FM_INFO_RETURNS_STROKES
Gibt an, dass GDI für jede von den Treibern unterstützte Glyphe eine PATHOBJ-Struktur anfordern kann, die die Spline der Glyphe beschreibt. Dieser Pfad kann nicht gefüllt werden, kann jedoch strichen werden, um eine Darstellung der Glyphe zu geben. Die Flags FM_INFO_RETURNS_OUTLINES und FM_INFO_RETURNS_STOKES können nicht gleichzeitig festgelegt werden.
FM_INFO_RIGHT_HANDED
Gibt an, dass die Abstiegsrichtung der Schriftart 90 Grad gegen den Uhrzeigersinn von der Basislinie ist. Die Richtung des Aufstiegs ist die Richtung, in der die Höhe gemessen wird und immer senkrecht zur Basisrichtung ist.
FM_INFO_TECH_BITMAP
Gibt an, dass die Schriftart eine Bitmapschriftart ist.
FM_INFO_TECH_CFF
Gibt an, dass es sich bei der Schriftart um eine Pscript OpenType-Schriftart handelt, die eine CFF-Tabelle (Compact Font Format) enthält.
FM_INFO_TECH_MM
Gibt an, dass es sich um eine Schriftart mit mehreren Master -Shapes (MM) handelt.
FM_INFO_TECH_OUTLINE_NOT_TRUETYPE
Gibt an, dass die Schriftart auf einer skalierbaren Schriftarttechnologie basiert, die Gliederungspfade verwendet, aber nicht auf TrueType basiert. Diese Kennzeichnung gibt nicht an, ob die für diese Schriftart zurückgegebenen Pfade gefüllt oder striche werden sollen. der Verbraucher sollte die FM_INFO_RETURNS_STROKES und FM_INFO_RETURNS_OUTLINES Kennzeichnungen für diese Informationen prüfen.
FM_INFO_TECH_STROKE
Gibt an, dass die Schriftart auf einer Strichschriftarttechnologie basiert. Diese Kennzeichnung gibt nicht an, ob die für diese Schriftart zurückgegebenen Pfade gefüllt oder striche werden sollen. der Verbraucher sollte die FM_INFO_RETURNS_STROKES und FM_INFO_RETURNS_OUTLINES Kennzeichnungen für diese Informationen prüfen.
FM_INFO_TECH_TRUETYPE
Gibt an, dass die Schriftart eine TrueType-Schriftart ist.
FM_INFO_TECH_TYPE1
Gibt an, dass diese Schriftart eine PostScript-Bildschirmschriftart ist (entweder Type1 oder OpenType PostScript).
fsSelection
Gibt eine Kombination der folgenden Flags an:
Wert | Beschreibung |
---|---|
FM_SEL_BOLD | Legen Sie fest, ob die Zeichen der Schriftart fett formatiert sind. |
FM_SEL_ITALIC | Legen Sie fest, ob die Zeichen der Schriftart kursiv formatiert sind. |
FM_SEL_NEGATIVE | Legen Sie fest, ob die Zeichen der Schriftart den Vordergrund und den Hintergrund umgekehrt haben. |
FM_SEL_OUTLINED | Legen Sie fest, ob die Zeichen der Schriftart hohl sind. |
FM_SEL_REGULAR | Legen Sie fest, ob die Zeichen der Schriftart die normale Stärke aufweisen. |
FM_SEL_STRIKEOUT | Legen Sie fest, ob die Zeichen der Schriftart standardmäßig markiert sind; andernfalls müssen Durchgestriche simuliert werden. |
FM_SEL_UNDERSCORE | Legen Sie fest, ob alle Zeichen der Schriftart standardmäßig unterstrichen werden. andernfalls muss eine Unterschattierung simuliert werden. |
fsType
Dies ist ein TrueType-spezifisches Bitfeld, das bestimmte Eigenschaften für die Schriftart angibt, z. B. Schriftarteinbettung und Lizenzierungsrechte für die Schriftart. Einbettbare Schriftarten können in einem Dokument gespeichert werden. Wenn ein Dokument mit eingebetteten Schriftarten auf einem System geöffnet wird, das die Schriftart nicht installiert hat (das Remotesystem), kann die eingebettete Schriftart für temporäre (und in einigen Fällen dauerhafte) Verwendung auf diesem System durch eine Einbettungsanwendung geladen werden. Das Einbetten von Lizenzrechten wird vom Hersteller der Schriftart gewährt. Die folgenden Flags können festgelegt werden:
Wert | Beschreibung |
---|---|
FM_EDITABLE_EMBED | Legen Sie fest, ob die Schriftart eingebettet und vorübergehend auf anderen Systemen geladen werden kann. Dokumente mit bearbeitbaren Schriftarten können zum Lesen und Schreiben geöffnet werden. |
FM_READONLY_EMBED | Festlegen, ob Lese-/Schreibeinbettung nicht zulässig ist; Nur "Vorschau- und Druck"-Kapselung ist zulässig. Wenn dieses Bit festgelegt ist, kann die Schriftart eingebettet und vorübergehend auf das Remotesystem geladen werden. Dokumente, die Schriftarten "Vorschau" und "Drucken" enthalten, müssen "schreibgeschützt" geöffnet werden; auf das Dokument können keine Bearbeitungen angewendet werden. |
FM_TYPE_LICENSED, FM_NO_EMBEDDING | Legen Sie fest, ob die Schriftart eine Eingeschränkte Lizenzschriftart ist. Wenn nur dieses Bit festgelegt ist, darf diese Schriftart nicht geändert, eingebettet oder in irgendeiner Weise ausgetauscht werden, ohne zuerst die Erlaubnis des rechtlichen Eigentümers zu erhalten. Damit die Eingeschränkte Lizenzeinbettung wirksam wird, muss es sich um die einzige Ebene der Einbettung handeln. |
Schriftarten mit dem FM_READONLY_EMBED Bitsatz geben an, dass sie in Dokumente eingebettet werden können, jedoch nur vorübergehend auf dem Remotesystem installiert werden müssen. Jedes Dokument, das eine FM_READONLY_EMBED Schriftart enthält, muss schreibgeschützt geöffnet werden. Das heißt, die Anwendung kann es dem Benutzer ermöglichen, das Dokument anzuzeigen und/oder zu drucken, aber nicht zu bearbeiten.
Schriftarten mit dem FM_EDITABLE_EMBED Bitsatz geben an, dass sie in Dokumente eingebettet werden können, müssen jedoch nur vorübergehend auf dem Remotesystem installiert werden. Im Gegensatz zu FM_READONLY_EMBED Schriftarten können Dokumente mit bearbeitbaren Schriftarten "Lesen/Schreiben" geöffnet werden, und Änderungen können gespeichert werden.
Schriftarten ohne fsType Bits set geben an, dass sie von einer Anwendung eingebettet und dauerhaft auf dem Remotesystem installiert werden können. Der Nutzer des Remotesystems erwirbt die gleichen Rechte, Pflichten und Lizenzen für diese Schriftart wie der ursprüngliche Käufer der Schriftart und unterliegt demselben Endbenutzer-Lizenzvertrag, dem Urheberrecht, dem Designpatent und/oder der Marke wie der ursprüngliche Käufer.
Anwendungen, die Unterstützung für das Einbetten von Schriftarten implementieren, entweder über die Verwendung der Schriftarteinbettungs-DLL oder auf andere Arten, dürfen keine Schriftarten einbetten, die nicht lizenziert sind, um das Einbetten zuzulassen. Darüber hinaus müssen Anwendungen, die eingebettete Schriftarten für die temporäre Verwendung laden, die Schriftarten löschen, wenn das Dokument, das die eingebettete Schriftart enthält, geschlossen wird.
Wenn mehrere Einbettungsbits festgelegt sind, hat die geringste restriktive Lizenz Vorrang. Wenn beispielsweise Bits 1 und 3 festgelegt sind, hat Bit 3 Vorrang vor Bit 1, und die Schriftart kann mit bearbeitbaren Rechten eingebettet werden. Aus Kompatibilitätsgründen legen die meisten Anbieter, die bearbeitungsfähige Einbettungsrechte gewähren, auch das Vorschau-& Druckbit (0x000C) fest. Dies ermöglicht einer Anwendung, die nur die Vorschau & Drucken einbetten unterstützt, um zu erkennen, dass das Einbetten von Schriftarten zulässig ist.
fwdUnitsPerEm
Gibt die Em-Höhe der Schriftart an.
fwdLowestPPEm
Gibt die kleinste lesbare Größe der Schriftart in Pixel an. Dieser Wert wird für Bitmapschriftarten ignoriert.
fwdWinAscender
Gibt den Windows-aufsteigenden Wert für die Schriftart an.
fwdWinDescender
Gibt den Windows-absteigenden Wert für die Schriftart an.
fwdMacAscender
Gibt den Macintosh-Aufsteigenden Wert für die Schriftart an.
fwdMacDescender
Gibt den Macintosh-Absteigenden Wert für die Schriftart an. Diese Zahl ist in der Regel kleiner als Null. Er misst die signierte Verdrängung aus der Basislinie des niedrigsten Absteigenden im Macintosh-Zeichensatz.
fwdMacLineGap
Gibt den Macintosh-Zeilenabstand für die Schriftart an. Der vorgeschlagene Macintosh-Interlineabstand entspricht fwdMacLineGap + fwdMacAscender âˆ' fwdMacDescender.
fwdTypoAscender
Gibt den typografischen aufsteigenden Wert für die Schriftart an.
fwdTypoDescender
Gibt den typografischen absteigenden Wert für die Schriftart an. Dieser Wert gibt die signierte Verdrängung des niedrigsten Absteigenden aus dem Basisplan an.
fwdTypoLineGap
Gibt den typografischen Zeilenabstand für die Schriftart an.
fwdAveCharWidth
Gibt den arithmetischen Mittelwert der Breite aller 26 Kleinbuchstaben "a" bis "z" des lateinischen Alphabets und des Leerzeichens an. Wenn einer der 26 Kleinbuchstaben nicht vorhanden ist, sollte dieses Element auf den gewichteten Mittelwert aller Glyphen in der Schriftart festgelegt werden.
fwdMaxCharInc
Gibt die maximale Zeicheninkrementierung aller Glyphen in der Schriftart an.
fwdCapHeight
Gibt die Höhe der optischen Zeile an, die den Anfang des Großbuchstabens "H" in Schrifteinheiten (FUnits) beschreibt. Dies entspricht möglicherweise nicht der gemessenen Höhe des Großbuchstabens "H". Wenn diese Informationen nicht vorhanden sind, sollte fwdCapHeight- auf Null festgelegt werden, was darauf hinweist, dass sie nicht definiert ist.
fwdXHeight
Gibt die Höhe der optischen Linie an, die die Höhe des Kleinbuchstabens "x" in Schrifteinheiten beschreibt. Dies entspricht möglicherweise nicht der gemessenen Höhe des Kleinbuchstabens "x". Ein Wert von Null gibt an, dass dieses Element nicht definiert ist.
fwdSubscriptXSize
Gibt die vorgeschlagene Zeichenbreite (die Größe entlang der Basislinie) der tiefgestellten Schriftart an.
fwdSubscriptYSize
Gibt die vorgeschlagene Zeichenhöhe (die Größe entlang der aufsteigenden Richtung) der tiefgestellten Schriftart an.
fwdSubscriptXOffset
Gibt den vorgeschlagenen Offset in der Basislinie des tiefgestellten Zeichens an. Der Offset entspricht dem Zeichenursprung des Basiszeichens.
fwdSubscriptYOffset
Gibt den vorgeschlagenen Offset in der Basislinie des tiefgestellten Zeichens an. Der Offset wird vom Zeichenursprung des Basiszeichens übernommen.
fwdSuperscriptXSize
Gibt die vorgeschlagene Zeichenbreite (die Größe entlang der Basislinie) der hochgestellten Schriftart an.
fwdSuperscriptYSize
Gibt die vorgeschlagene Zeichenhöhe (die Größe entlang der aufsteigenden Richtung) der hochgestellten Schriftart an.
fwdSuperscriptXOffset
Gibt den vorgeschlagenen Offset in der Basislinie des hochgestellten Zeichens an. Der Offset wird vom Zeichenursprung des Basiszeichens übernommen.
fwdSuperscriptYOffset
Gibt den vorgeschlagenen Offset in der Basislinie des hochgestellten Zeichens an. Der Offset wird vom Zeichenursprung des Basiszeichens übernommen.
fwdUnderscoreSize
Gibt die vorgeschlagene Breite der Unterstrichleiste in Schrifteinheiten an.
fwdUnderscorePosition
Gibt die vorgeschlagene Verschiebung in Schrifteinheiten von der Basislinie in die Mitte der Unterstrichleiste an.
fwdStrikeoutSize
Gibt die vorgeschlagene Breite des durchgestrichenen Balkens in Schriftkoordinaten an.
fwdStrikeoutPosition
Gibt die vorgeschlagene Verschiebung der Mitte des durchgestrichenen Balkens von der Basislinie an.
chFirstChar
Gibt das unterste unterstützte Zeichen in der Codeseite an, die in jWinCharSet-angegeben ist. Dieses Feld wird für die Kompatibilität von Windows 3.1 bereitgestellt.
chLastChar
Gibt das höchste unterstützte Zeichen in der Codeseite an, die in jWinCharSet-angegeben ist. Dieses Feld wird für die Kompatibilität von Windows 3.1 bereitgestellt.
chDefaultChar
Gibt das Standardzeichen in der codepage an, die in jWinCharSetangegeben ist. Dieses Feld wird für die Kompatibilität von Windows 3.1 bereitgestellt.
chBreakChar
Gibt das Umbruchzeichen auf der codepage an, die in jWinCharSet-angegeben ist. Dieses Feld wird für die Kompatibilität von Windows 3.1 bereitgestellt.
wcFirstChar
Gibt das unterstützte Zeichen mit dem kleinsten Unicode-Zeichencode an.
wcLastChar
Gibt das unterstützte Zeichen mit dem größten Unicode-Zeichencode an.
wcDefaultChar
Gibt das Zeichen an, das ersetzt werden soll, wenn eine Anwendung ein Zeichen anfordert, das von der Schriftart nicht unterstützt wird.
wcBreakChar
Gibt den Codepunkt des Leerzeichens oder dessen Entsprechung an.
ptlBaseline
Gibt eine POINTL- Struktur an, die die beabsichtigte Schreibrichtung dieser Schriftart enthält. Beispielsweise gibt eine typische lateinische Schriftart einen Wert von (1,0) an.
ptlAspect
Gibt eine POINTL-Struktur an, die das Seitenverhältnis der Pixelzentrierung enthält, für die die Bitmapschriftart entworfen wurde. Dieser Wert wird nur von Bitmapschriftarten verwendet.
ptlCaret
Gibt eine POINTL-Struktur an, die die Richtung der aufsteigenden Richtung der Schriftart enthält. Beispielsweise lautet der Wert für eine nichtitalicisierte lateinische Schriftart (0,1), während eine kursiv formatierte lateinische Schriftart einen Wert von (2,5) angeben kann.
rclFontBox
Gibt eine RECTL- Struktur an, die das Begrenzungsfeld aller Glyphen in der Schriftart im Entwurfsbereich beschreibt.
achVendId[4]
Gibt einen Vier-Zeichen-Bezeichner für den Schriftartanbieter an. Bezeichner werden in der Microsoft TrueType-Spezifikation dokumentiert.
cKerningPairs
Gibt die Anzahl der Kerningpaare an, die dieser Schriftart zugeordnet sind.
ulPanoseCulture
Gibt die Art und Weise an, wie die Panosenummer interpretiert werden soll. Diese Zahl sollte für lateinische Schriftarten auf FM_PANOSE_CULTURE_LATIN festgelegt werden. Informationen zur PANOSE-Struktur finden Sie in der Dokumentation zum Microsoft Window SDK.
panose
Ist ein Array von 10 Byte, das verwendet wird, um die visuellen Merkmale einer bestimmten Schriftart zu beschreiben. Diese Merkmale werden dann verwendet, um die Schriftart anderen Schriftarten mit ähnlichen Namen zuzuordnen. Informationen zur PANOSE-Struktur finden Sie in der Window SDK-Dokumentation.
Bemerkungen
Die PRINTIFI32-Struktur ist in Windows Server 2003 SP1 und höher verfügbar. Da diese Struktur eine feste Größe aufweist und sie garantiert nicht über Architekturen oder Betriebssystemversionen hinweg geändert werden kann, kann sie für binäre Dateilayouts verwendet werden. Unidrv UFM-Dateien sind in dem in dieser Struktur beschriebenen Format für alle Plattformen angeordnet. Pscript5 NTF-Dateien verwenden die plattformspezifische Version dieser Struktur.
Zusätzliche Informationen für eine Schriftart können optional in der IFIEXTRA- Struktur angegeben werden.
Die DrvQueryFont Routine eines Treibers füllt sie aus und gibt eine IFIMETRICS-Struktur an GDI zurück.
Die PRINTIFI32 Struktur definiert alle Informationen für eine Schriftart, die GDI versteht. Die meisten Member sind FWORD-Werte, die als 16-Bit-Größen im Entwurfsbereich signiert sind. Wenn es sich bei der Schriftart um eine Rasterschriftart handelt, sind Entwurfsraum und Gerätebereich identisch, und eine Schrifteinheit entspricht dem Abstand zwischen Pixeln.
Das Koordinatensystem im Schriftart-/Schreibbereich ist so, dass die Y-Koordinate in eine Richtung nach oben steigt und die X-Koordinate nach rechts ansteigt.
Anforderungen
Anforderung | Wert |
---|---|
Header- | prntfont.h (include Prntfont.h) |