Freigeben über


PRINTIFI32 Struktur (prntfont.h)

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)

Siehe auch

IFIMETRICS-