PRINTIFI32-Struktur (prntfont.h)
Die PRINTIFI32-Struktur ist eine Version der IFIMETRICS-Struktur mit fester Größe 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;
Member
cjThis
Gibt die Größe dieser Struktur in Byte an. Die angegebene Größe umfasst alle Unicode-Zeichenfolgen, die am Ende dieser Struktur angefügt werden, sowie die Größe in Bytes der optionalen IFIEXTRA-Struktur .
cjIfiExtra
Gibt die Größe der IFIEXTRA-Struktur in Byte an, die dieser Struktur folgt. Der Wert 0 (null) gibt an, dass keine IFIEXTRA-Struktur vorhanden ist.
dpwszFamilyName
Gibt den Offset in Byte zu einer Unicode-Zeichenfolge mit NULL-Beendigung 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 identisch sein, der im lfFaceName-Member der Win32 LOGFONT-Struktur aufgezeichnet wird.
dpwszStyleName
Gibt den Offset in Bytes auf eine Unicode-Zeichenfolge mit Null-Endung an, die den Stil der Schriftart beschreibt (z. B. "Bold").
dpwszFaceName
Gibt den Offset in Byte zu einer unicode-Zeichenfolge mit NULL-Endung 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 Byte zu einer Unicode-Zeichenfolge mit Null-Endung an, die den eindeutigen Bezeichner der Schriftart darstellt (z. B. "Monotype:Times New Roman:1990").
dpFontSim
Gibt den Offset in Bytes vom Anfang dieser Struktur bis zu einer FONTSIM-Struktur an, die die von der Schriftart unterstützten Simulationen beschreibt. Der Treiber sollte diesen Member nur dann auf einen Wert ungleich null festlegen, wenn die Schriftart fett, kursiv oder fett kursiv formatierte Simulationen unterstützt. Andernfalls sollte der Treiber dies auf 0 (null) festlegen.
Beachten Sie, dass der Treiber, wenn eine Schriftart kursiv formatiert ist, keine Schriftartunterstützung für kursive Simulationen angeben sollte, obwohl dies auf die Unterstützung der Schriftart für die fettformatige kursive Simulation hinweisen kann. Ebenso sollte der Treiber keine Schriftartunterstützung für fett formatierte Simulationen angeben, wenn die Schriftart fett formatiert ist, kann aber die Unterstützung der Schriftart für die fettformatige kursive Simulation angeben. 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 Bytes groß und wird immer mit DEFAULT_CHARSET beendet. Der erste Wert des Arrays sollte den Windows-Zeichensatz identifizieren, der die beste und vollständigste Abdeckung in der Schriftart aufweist. Dieser Wert sollte auch in jWinCharSet gespeichert werden. Wenn es sich bei instance um eine japanische Schriftart handelt, die auch US-ANSI- und kyrillische Zeichensätze unterstützt, sollte jWinCharSet auf SHIFTJIS_CHARSET festgelegt werden, und das von dpCharSets identifizierte Array würde SHIFTJIS_CHARSET, ANSI_CHARSET, RUSSIAN_CHARSET DEFAULT_CHARSET enthalten.
Wenn diese Schriftart nicht mehr als einen Windows-Zeichensatz unterstützt, sollte dpCharSets auf 0 (null) festgelegt werden.
jWinCharSet
Gibt den Zeichensatz an, der von dieser Schriftart am besten unterstützt wird. Wenn die Schriftart nur einen einzelnen Windows-Zeichensatz unterstützt, sollte der Treiber den entsprechenden Wert in jWinCharSet speichern. Der Treiber sollte DEFAULT_CHARSET in diesem Feld nicht speichern. Dieser Member 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 Baltic-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 vereinfachten chinesischen Zeichensatz (PRC). |
GREEK_CHARSET | Diese Schriftart unterstützt den griechischen Zeichensatz. |
HANGEUL_CHARSET | Diese Schriftart unterstützt den koreanischen Zeichensatz (Hangeul). |
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 systemabhä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 die Tonhöhe der Schriftart an. Die beiden Bits mit niedriger Reihenfolge geben die Tonhöhe der Schriftart an und können einen der folgenden Werte aufweisen:
Wert | BESCHREIBUNG |
---|---|
FIXED_PITCH | Für Schriftarten mit fester Tonhöhe |
VARIABLE_PITCH | Für Schriftarten mit variabler Tonhöhe |
Die Bits 4 bis 7 dieses Elements geben die Schriftfamilie an und können einer der folgenden Werte sein:
Wert | BESCHREIBUNG |
---|---|
FF_DECORATIVE | Neue Schriftarten, z. B. Altenglisch. |
FF_DONTCARE | Egal oder unbekannt. |
FF_MODERN | Schriftarten mit konstanter Strichbreite (feste Tonhöhe), mit oder ohne Serifen. Schriftarten mit fester Tonhöhe sind in der Regel modern, z. B. Pica, Elite und Courier. |
FF_ROMAN | Schriftarten mit variabler Strichbreite (proportional) und serifen, z. B. Times Roman, Palatino und Century Schoolbook. |
FF_SCRIPT | Schriftarten, die wie Handschrift aussehen, z. B. Script und Cursive. |
FF_SWISS | Schriftarten mit variabler Strichbreite (proportional) und ohne Serifen, z. B. Helvetica und Swiss. |
usWinWeight
Gibt die Gewichtung der Schriftart im Bereich von 0 bis 1000 an (z. B. ist 400 normal und 700 ist 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 der folgenden Flagwerte sein:
Wert
Bedeutung
FM_INFO_1BPP
Gibt an, dass eine Glyphen-Bitmap eine Farbtiefe von einem Bit pro Pixel aufweist. Für Windows NT 3.1, die erste Version von Windows NT, muss dieses Flag festgelegt werden.
FM_INFO_4BPP
Gibt an, dass eine Glyphenbitbit-Bitmap eine Farbtiefe von vier Bits pro Pixel aufweist. Der Treiber sollte dies festlegen, wenn die Schriftart Antialiased Glyphen-Bitmaps mit 16 Graustufen unterstützt.
FM_INFO_8BPP
Gibt an, dass eine Glyphen-Bitmap eine Farbtiefe von acht Bits pro Pixel aufweist. Die aktuelle Version von GDI ignoriert diese Einstellung, da sie keine Farbschriftarten unterstützt.
FM_INFO_16BPP
Gibt an, dass eine Glyphenbitbit 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 Glyphenbitbit eine Farbtiefe von 24 Bits pro Pixel aufweist. Die aktuelle Version von GDI ignoriert diese Einstellung, da sie keine Farbschriftarten unterstützt.
FM_INFO_32BPP
Gibt an, dass eine Glyphenbitbit eine Farbtiefe von 32 Bits 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 Drehungen der ursprünglichen fiktiven Form um 90 Grad realisiert werden kann. GDI fordert die Drehung einer Schriftart an, indem die Drehung in die Transformation vom Typ zum Gerät eingeschlossen wird, die beim Erstellen der Schriftart an den Treiber übergeben wird. Dieser Member hat nur dann Bedeutung, wenn das flag FM_INFO_ARB_XFORMS nicht festgelegt wurde.
FM_INFO_ANISOTROPIC_SCALING_ONLY
Gibt an, dass die Schriftart nur die beliebige anisotrope Skalierung unterstützt. Das heißt, Transformationen entsprechen einer diagonalen Matrix multipliziert mit einer positiven reellen Zahl. Wenn dieses Flag festgelegt ist, können die FM_INFO_ARB_XFORMS und die FM_INFO_ISOTROPIC_SCALING_ONLY-Flags nicht festgelegt werden. Wenn auch das flag FM_INFO_90DEGREE_ROTATIONS festgelegt ist, unterstützt die Schriftart Transformationen, die eine Kombination aus einer einfachen anisotropen Skalierung gefolgt von einer Drehung um ein Vielfaches von 90 Grad sind.
FM_INFO_ARB_XFORMS
Gibt an, dass eine Schriftart in einem kontinuierlichen 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 von Zeicheninkrement aufweisen. Wenn dieses Flag 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 eine feste Tonhöhe aufweisen. An einzelnen Bytezeichen wird nichts impliziert. Dieses Flag ist nur für Schriftarten sinnvoll, die einen Double-Byte-Zeichensatz (DBCS) unterstützen, z. B. shift JIS. Schriftarten, die kein DBCS unterstützen, sollten dieses Flag nicht festlegen.
FM_INFO_DO_NOT_ENUMERATE
Gibt an, dass diese Schriftart nicht von den Win32-Routinen EnumFontFamiliesEx, EnumFontFamilies oder EnumFonts aufgezählt wird. Darüber hinaus wird die an einen Win32-Anwendungsaufruf von GetTextFace zurückgegebene Zeichenfolge aus der Zeichenfolge dpwszUniqueName abgerufen. Dieses Flag ermöglicht es dem Schriftartenanbieter, mehr als eine PRINTIFI32-Struktur einer seiner Schriftarten zuzuordnen.
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 zu einer Liste gleichwertiger Familiennamen oder Aliase ist. Der Vorname ist der Basis- oder Realname; die nachfolgenden Namen sind Äquivalente oder Aliase. Jeder Name in der Liste ist NULL-endend; 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 flag TC_RA_ABLE ignoriert wird.
FM_INFO_INTEGER_WIDTH
Gibt an, dass alle Glyphen nichtfraktionale Vorwärtsbreiten aufweisen. Bitmapschriftarten legen dieses Flag in der Regel fest.
FM_INFO_INTEGRAL_SCALING
Gibt an, dass die Schriftart um einen integralen Betrag in x- und y-Richtung skaliert werden kann. Wenn dieses Flag festgelegt ist, muss der Treiber in der Lage sein, Glyphen in dem Fall zu rendern, wenn die Transformation des Nominals zu Gerät nach integralen Mengen in x- und y-Richtung skaliert wird. GDI fordert die integrale Skalierung einer Schriftart an, indem die axialen Skalierungen in die Transformation vom Typ "Notional to Device" eingeschlossen werden, die beim Erstellen der Schriftart an den Treiber übergeben wird. Dieses Flag ist nur dann sinnvoll, wenn das flag FM_INFO_ARB_XFORMS nicht festgelegt wurde.
FM_INFO_ISOTROPIC_SCALING_ONLY
Gibt an, dass die Schriftart nur die beliebige isotrope Skalierung unterstützt. Das heißt, Transformationen entsprechen der Identitätsmatrix multipliziert mit einer positiven reellen Zahl. Wenn dieses Flag festgelegt ist, können weder die FM_INFO_ARB_XFORMS noch die FM_INFO_ANISOTROPIC_SCALING_ONLY-Flags festgelegt werden. Wenn das flag FM_INFO_90DEGREE_ROTATIONS 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 typografisch als feste Tonhöhe betrachtet wird. Dies ist eine optische Qualität der Schriftart und weist nicht unbedingt darauf hin, dass alle Glyphen der Schriftart das gleiche Zeichen inkrementieren.
FM_INFO_NONNEGATIVE_AC
Gibt an, dass alle Glyphen dieser Schriftart nicht deegative a - und c-Abstände aufweisen. Das heißt, das Schwarze Feld der Glyphen erstreckt sich niemals außerhalb des Bereichs, der vom Zeichenursprung und dem 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 alle vom Treiber unterstützten Glyphen eine PATHOBJ-Struktur anfordern kann, die die Gliederung dieser Glyphe beschreibt. Wenn die Gliederung mit den Pfadfüllkonventionen von GDI gefüllt wird, sollte die resultierende Bitmap nach Möglichkeit 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 alle von den Treibern unterstützten Glyphen eine PATHOBJ-Struktur anfordern kann, die die Spline der Glyphe beschreibt. Dieser Pfad kann nicht ausgefüllt, sondern gestrichelt werden, um eine Darstellung der Glyphe zu erhalten. 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 Aufstiegsrichtung der Schriftart 90 Grad gegen den Uhrzeigersinn von der Basislinie ist. Die Aufstiegsrichtung ist die Richtung, entlang der die Höhe gemessen wird, und ist immer senkrecht zur Basisrichtung.
FM_INFO_TECH_BITMAP
Gibt an, dass es sich bei der Schriftart um eine Bitmapschriftart handelt.
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 Mm-Schriftart (Multiple Master) 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. Dieses Flag gibt nicht an, ob die für diese Schriftart zurückgegebenen Pfade gefüllt oder gestrichelt werden sollen. Der Verbraucher sollte die FM_INFO_RETURNS_STROKES und FM_INFO_RETURNS_OUTLINES Flags für diese Informationen überprüfen.
FM_INFO_TECH_STROKE
Gibt an, dass die Schriftart auf einer Strichschrifttechnologie basiert. Dieses Flag gibt nicht an, ob die für diese Schriftart zurückgegebenen Pfade gefüllt oder gestrichelt werden sollen. der Verbraucher sollte die FM_INFO_RETURNS_STROKES und FM_INFO_RETURNS_OUTLINES Flags auf diese Informationen untersuchen.
FM_INFO_TECH_TRUETYPE
Gibt an, dass es sich bei der Schriftart um eine TrueType-Schriftart handelt.
FM_INFO_TECH_TYPE1
Gibt an, dass es sich bei dieser Schriftart um eine PostScript-Bildschirmschriftart handelt (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 sind. |
FM_SEL_ITALIC | Legen Sie fest, ob die Zeichen der Schriftart kursiv sind. |
FM_SEL_NEGATIVE | Legen Sie fest, ob für die Zeichen der Schriftart der Vordergrund und der Hintergrund umgekehrt sind. |
FM_SEL_OUTLINED | Legen Sie fest, ob die Zeichen der Schriftart hohl sind. |
FM_SEL_REGULAR | Legen Sie fest, ob die Zeichen der Schriftart normal gewichtet sind. |
FM_SEL_STRIKEOUT | Legen Sie fest, ob die Zeichen der Schriftart standardmäßig ausgeschlagen sind. Andernfalls müssen Strikeouts simuliert werden. |
FM_SEL_UNDERSCORE | Legen Sie fest, ob alle Zeichen der Schriftart standardmäßig unterstrichen sind; Andernfalls muss eine Unterkorrektur simuliert werden. |
fsType
Dies ist ein TrueType-spezifisches Bitfeld, das bestimmte Eigenschaften für die Schriftart angibt, z. B. die Einbettung von Schriftarten und Lizenzrechte 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, auf dem die Schriftart nicht installiert ist (das Remotesystem), kann die eingebettete Schriftart zur temporären (und in einigen Fällen dauerhaften) Verwendung auf diesem System durch eine einbettungsfähige Anwendung geladen werden. Einbettungsrechte werden vom Schriftartenhersteller 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, die bearbeitbare Schriftarten enthalten, können zum Lesen und Schreiben geöffnet werden. |
FM_READONLY_EMBED | Legen Sie fest, ob die Einbettung mit Lese-/Schreibzugriff nicht zulässig ist; nur die Kapselung "Vorschau und Drucken" 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; es können keine Bearbeitungen auf das Dokument angewendet werden. |
FM_TYPE_LICENSED, FM_NO_EMBEDDING | Legen Sie fest, ob es sich bei der Schriftart um eine Eingeschränkte Lizenzschrift handelt. Wenn nur dieses Bit festgelegt ist, darf diese Schriftart nicht geändert, eingebettet oder ausgetauscht werden, ohne zuvor die Genehmigung des rechtmäßigen Besitzers einzuholen. Damit die Einbettung mit eingeschränkter Lizenz wirksam wird, muss dies die einzige ausgewählte Einbettungsebene sein. |
Schriftarten mit dem FM_READONLY_EMBED Bitsatz geben an, dass sie in Dokumente eingebettet werden können, aber 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 dem Benutzer das Dokument anzeigen und/oder drucken, aber nicht bearbeiten.
Schriftarten mit dem FM_EDITABLE_EMBED Bitsatz geben an, dass sie in Dokumente eingebettet werden können, aber nur vorübergehend auf dem Remotesystem installiert werden müssen. Im Gegensatz zu FM_READONLY_EMBED Schriftarten können Dokumente, die bearbeitbare Schriftarten enthalten, geöffnet werden. Die Bearbeitung ist erlaubt und Änderungen können gespeichert werden.
Schriftarten ohne festgelegte fsType-Bits geben an, dass sie von einer Anwendung eingebettet und dauerhaft auf dem Remotesystem installiert werden können. Der Benutzer 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, demselben Urheberrecht, einem Designpatent und/oder derselben Marke wie der ursprüngliche Käufer.
Anwendungen, die die Unterstützung für die Einbettung von Schriftarten implementieren, sei es durch die Verwendung der Font Embedding-DLL oder auf andere Wege, dürfen keine Schriftarten einbetten, die nicht lizenziert sind, um die Einbettung zuzulassen. Darüber hinaus müssen Anwendungen, die eingebettete Schriftarten zur temporären Verwendung laden, die Schriftarten löschen, wenn das Dokument, das die eingebettete Schriftart enthält, geschlossen wird.
Wenn mehrere Einbettungsbits festgelegt sind, hat die am wenigsten einschränkende 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 Bearbeitbare Einbettungsrechte gewähren, auch die Vorschauversion & Druckbit (0x000C) fest. Dies ermöglicht einer Anwendung, die nur die Einbettung von Vorschau & Drucken unterstützt, um zu erkennen, dass die Einbettung von Schriftarten zulässig ist.
fwdUnitsPerEm
Gibt die Em-Height der Schriftart an.
fwdLowestPPEm
Gibt die kleinste lesbare Schriftgröße 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-Abstiegswert für die Schriftart an.
fwdMacAscender
Gibt den aufsteigenden Macintosh-Wert für die Schriftart an.
fwdMacDescender
Gibt den Macintosh-Abstiegswert für die Schriftart an. Diese Zahl ist in der Regel kleiner als 00. Es misst die signierte Verschiebung aus der Basiszeile des niedrigsten Abfolgers im Macintosh-Zeichensatz.
fwdMacLineGap
Gibt die Macintosh-Zeilenlücke für die Schriftart an. Der vorgeschlagene Macintosh-Zwischenabstand 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 Verschiebung des niedrigsten Abstamms aus der Baseline an.
fwdTypoLineGap
Gibt die typografische Zeilenlücke 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 dieser Member gleich dem gewichteten Durchschnitt 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 Linie an, die den oberen Rand des Großbuchstabens "H" in Schriftarteinheiten (FUnits) beschreibt. Dies ist möglicherweise nicht mit der gemessenen Höhe des Großbuchstabens "H" identisch. Wenn diese Informationen nicht vorhanden sind, sollte fwdCapHeight auf Null festgelegt werden, was angibt, 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 ist möglicherweise nicht mit der gemessenen Höhe des Kleinbuchstabens "x" identisch. Der Wert 0 gibt an, dass dieser Member nicht definiert ist.
fwdSubscriptXSize
Gibt die vorgeschlagene Zeichenbreite (die Größe entlang der Basisrichtung) 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 Basisrichtung des tiefgestellten Zeichens an. Der Offset ist in Bezug auf den Zeichenursprung des Basiszeichens.
fwdSubscriptYOffset
Gibt den vorgeschlagenen Offset in der Basisrichtung des tiefgestellten Zeichens an. Der Offset stammt aus dem Zeichenursprung des Basiszeichens.
fwdSuperscriptXSize
Gibt die vorgeschlagene Zeichenbreite (die Größe entlang der Baselinerichtung) 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 Basisrichtung des hochgestellten Zeichens an. Der Offset stammt aus dem Zeichenursprung des Basiszeichens.
fwdSuperscriptYOffset
Gibt den vorgeschlagenen Offset in der Basisrichtung des hochgestellten Zeichens an. Der Offset stammt aus dem Zeichenursprung des Basiszeichens.
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 der Streichleiste in Schriftkoordinaten an.
fwdStrikeoutPosition
Gibt die vorgeschlagene Verschiebung der Mitte des Strikeoutbalkens von der Baseline an.
chFirstChar
Gibt das niedrigste unterstützte Zeichen auf der Codepage an, die in jWinCharSet angegeben ist. Dieses Feld wird für die Windows 3.1-Kompatibilität bereitgestellt.
chLastChar
Gibt das höchste unterstützte Zeichen auf der Codepage an, die in jWinCharSet angegeben ist. Dieses Feld wird für die Windows 3.1-Kompatibilität bereitgestellt.
chDefaultChar
Gibt das Standardzeichen auf der Codepage an, die in jWinCharSet angegeben ist. Dieses Feld wird für die Windows 3.1-Kompatibilität bereitgestellt.
chBreakChar
Gibt das Umbruchzeichen in der Codepage an, die in jWinCharSet angegeben ist. Dieses Feld wird für die Kompatibilität mit 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 zu ersetzende Zeichen an, 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 den Wert (1,0) an.
ptlAspect
Gibt eine POINTL-Struktur an, die das Seitenverhältnis der Pixelzentren 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 ist der Wert für eine nicht italicisierte lateinische Schriftart (0,1), während eine kursiv formatierte lateinische Schriftart den Wert (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 Vierzeichenbezeichner für den Schriftartenhersteller an. Bezeichner sind in der Microsoft TrueType-Spezifikation dokumentiert.
cKerningPairs
Gibt die Anzahl der Kerningpaare an, die dieser Schriftart zugeordnet sind.
ulPanoseCulture
Gibt an, wie die Panosezahl 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 Bytes, das verwendet wird, um die visuellen Merkmale einer bestimmten Schriftart zu beschreiben. Diese Merkmale werden dann verwendet, um die Schriftart anderen Schriftarten ähnlicher Darstellung mit unterschiedlichen Namen zuzuordnen. Informationen zur PANOSE-Struktur finden Sie in der Windows SDK-Dokumentation.
Hinweise
Die PRINTIFI32-Struktur ist in Windows Server 2003 SP1 und höher verfügbar. Da diese Struktur eine feste Größe hat und sich garantiert nicht über Architekturen oder Betriebssystemversionen hinweg ändert, kann sie für Binäre Dateilayouts verwendet werden. Unidrv-UFM-Dateien werden für alle Plattformen im in dieser Struktur beschriebenen Format 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 wird ausgefüllt 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 16-Bit-Mengen im Entwurfsbereich signiert sind. Wenn es sich bei der Schriftart um eine Rasterschriftart handelt, sind Der Entwurfsbereich und der Gerätebereich identisch, und eine Schrifteinheit entspricht dem Abstand zwischen Pixeln.
Das Koordinatensystem im Schrift-/Schreibbereich ist so, dass die y-Koordinate in richtungwärts und die x-Koordinate nach rechts ansteigt.
Anforderungen
Anforderung | Wert |
---|---|
Header | prntfont.h (prntfont.h einschließen) |