DynaPDF Manual - Page 381

Previous Page 380   Index   Next Page 382

Function Reference
Page 381 of 770
typedef enum
{
ffsType1C
= 0, // CFF based Type1 font
ffsCIDFontType0C = 1, // CFF based Type1 CID font
ffsOpenType
= 2, // TrueType based OpenType font
ffsOpenTypeC
= 3, // CFF based OpenType font
ffsCIDFontType2
= 4, // TrueType based CID Font
ffsNoSubtype
= 9
// The font file is in the format of FontType
}TFontFileSubtype;
struct TCIDMetric
{
float Width; // Vertical displacment for text selection.
float x;
// Positioning vector
float y;
// Positioning vector
};
struct TPDFFontInfo
{
UI32
StructSize;
// Must be set to sizeof(TPDFFontInfo).
float
Ascent;
// Ascent (optional).
float
AvgWidth;
// Average character width (optional).
TBaseEncoding
BaseEncoding;
// Valid only if HaveEncoding is true.
char*
BaseFont;
// PostScript Name or Family Name.
float
CapHeight;
// Cap height (optional).
char*
CharSet;
// The charset describes which glyphs are present in the font.
UI32
CharSetSize;
// Length of the CharSet in bytes.
char*
CIDOrdering;
// SystemInfo -> Character collection.
char*
CIDRegistry;
// SystemInfo -> Issuer of the character collection.
BYTE*
CIDSet;
// CID fonts only. This is a table of bits indexed by CIDs.
UI32
CIDSetSize;
// Length of the CIDSet in bytes.
UI32
CIDSupplement;
// CIDSystemInfo -> Supplement number.
BYTE*
CIDToGIDMap;
// Allowed for embedded TrueType based CID fonts only.
UI32
CIDToGIDMapSize;
// Length of the stream in bytes.
BYTE*
CMapBuf;
// Only available if the CMap was embedded.
UI32
CMapBufSize;
// Buffer size in bytes.
char*
CMapName;
// CID fonts only external CMap name or encoding.
float
Descent;
// Descent (optional).
UI16*
Encoding;
// Unicode mapping 0..255 -> not available for CID fonts.
UI32
FirstChar;
// First char (simple fonts only).
UI32
Flags;
// See description below.
TBBox
FontBBox;
// This is the size of the largest glyph in this font.
BYTE*
FontBuffer;
// Available if the font was embedded or loaded from a buffer.
UI32
FontBufSize;
// Font file size in bytes.
char*
FontFamilyA;
// Optional Font Family (Family Name).
UI16*
FontFamilyW;
// Optional Font Family (Family Name).
char*
FontFilePathA;
// Only available for system fonts.
UI16*
FontFilePathW;
// Either the Ansi or Unicode path is set, but never both.
TFontFileSubtype FontFileType;
// See description below.
char*
FontName;
// Font name (should be the same as BaseFont).
char*
FontStretch;
// Optional -> Condensed, and so on.
TFontType
FontType;
// If ftType0 the font is a CID font.
float
FontWeight;
// Font weight (optional).
char*
FullNameA;
// System fonts only.
UI16*
FullNameW;
// System fonts only.
LBOOL
HaveEncoding;
// If true, BaseEncoding was set from the font's encoding.
float*
HorzWidths;
// Horizontal glyph widths -> 0..HorzWidthsCount -1.
UI32
HorzWidthsCount;
// Number of horizontal widths in the array.
LBOOL
Imported;
// If true, the font was imported from an external PDF file.
float
ItalicAngle;
// Italic angle.
char*
Lang;
// Optional language code defined by BCP 47.
UI32
LastChar;
// Last char (simple fonts only).
float
Leading;
// Leading (optional).
UI32
Length1;
// Length of the clear text portion of a Type1 font.
UI32
Length2;
// Length of the encrypted portion of a Type1 font program.
UI32
Length3;
// Length of the fixed-content portion of a Type1 font program.
float
MaxWidth;
// Maximum glyph width (optional).
BYTE*
Metadata;
// Optional XMP metadata stream about the font file.
UI32
MetadataSize;
// Buffer size in bytes.
float
MisWidth;
// Missing width (default = 0.0).
 

Previous topic: GetFontCount, GetFontEx (obsolete), GetFontInfo

Next topic: GetFontInfoEx, GetFontOrigin