Foxit PDF SDK
foxit.common.Font Class Reference
Inheritance diagram for foxit.common.Font:
foxit.common.Base

Public Types

enum  Charset {
  Charset.e_CharsetANSI = 0, Charset.e_CharsetDefault = 1, Charset.e_CharsetSymbol = 2, Charset.e_CharsetShift_JIS = 128,
  Charset.e_CharsetHangeul = 129, Charset.e_CharsetGB2312 = 134, Charset.e_CharsetChineseBig5 = 136, Charset.e_CharsetThai = 222,
  Charset.e_CharsetEastEurope = 238, Charset.e_CharsetRussian = 204, Charset.e_CharsetGreek = 161, Charset.e_CharsetTurkish = 162,
  Charset.e_CharsetHebrew = 177, Charset.e_CharsetArabic = 178, Charset.e_CharsetBaltic = 186
}
 Enumeration for font charset.
More...
 
enum  CIDCharset {
  CIDCharset.e_CIDCharsetUnknown = 0, CIDCharset.e_CIDCharsetGB1 = 1, CIDCharset.e_CIDCharsetCNS1 = 2, CIDCharset.e_CIDCharsetJAPAN1 = 3,
  CIDCharset.e_CIDCharsetKOREA1 = 4, CIDCharset.e_CIDCharsetUNICODE = 5
}
 Enumeration for CID font charset.
More...
 
enum  FontTypes { FontTypes.e_FontTypeType1 = 1, FontTypes.e_FontTypeTrueType = 2, FontTypes.e_FontTypeType3 = 3, FontTypes.e_FontTypeCIDFont = 4 }
 Enumeration for font type.
More...
 
enum  StandardID {
  StandardID.e_StdIDCourier = 0, StandardID.e_StdIDCourierB = 1, StandardID.e_StdIDCourierBI = 2, StandardID.e_StdIDCourierI = 3,
  StandardID.e_StdIDHelvetica = 4, StandardID.e_StdIDHelveticaB = 5, StandardID.e_StdIDHelveticaBI = 6, StandardID.e_StdIDHelveticaI = 7,
  StandardID.e_StdIDTimes = 8, StandardID.e_StdIDTimesB = 9, StandardID.e_StdIDTimesBI = 10, StandardID.e_StdIDTimesI = 11,
  StandardID.e_StdIDSymbol = 12, StandardID.e_StdIDZapfDingbats = 13
}
 Enumeration for standard font ID.
More...
 
enum  Styles {
  Styles.e_StyleFixedPitch = 0x0001, Styles.e_StyleSerif = 0x0002, Styles.e_StyleSymbolic = 0x0004, Styles.e_StyleScript = 0x0008,
  Styles.e_StyleNonSymbolic = 0x0020, Styles.e_StyleItalic = 0x0040, Styles.e_StyleAllCap = 0x10000, Styles.e_StylesSmallCap = 0x20000,
  Styles.e_StylesBold = 0x40000
}
 Enumeration for font styles.
More...
 

Public Member Functions

 Font (string name, int styles, Font.Charset charset, int weight)
 Constructor, with given attribute.
More...
 
 Font (Font.StandardID font_id)
 Constructor, by a standard font ID.
More...
 
 Font (string font_file_path, int face_index, Font.Charset charset)
 Constructor, from a font file.
More...
 
 Font (Font other)
 Constructor, with another font object.
More...
 
Font Embed (PDFDoc document)
 Embed current font to the specified PDF document.
More...
 
int GetAscent ()
 Get the ascent value, in 1/1000 of em size (PDF units).
More...
 
string GetBaseFontName (PDFDoc document)
 Get base font name.
More...
 
RectI GetCharBBox (int unicode)
 Get the bounding box of a character specified by unicode.
More...
 
RectI GetCharBBox (int unicode, PDFDoc document)
 Get the bounding box of a character(specified by unicode) in a PDF document.
More...
 
float GetCharWidth (int unicode)
 Get the width (in 1/1000 of em size (PDF units)) of a character specified by unicode.
More...
 
float GetCharWidth (int unicode, PDFDoc document)
 Get the width (in 1/1000 of em size, as PDF units) of a character (specified by unicode) in a PDF document.
More...
 
Font.CIDCharset GetCIDCharset (PDFDoc document)
 Get CID font charset.
More...
 
int GetDescent ()
 Get the descent value, in 1/1000 of em size (PDF units).
More...
 
string GetFamilyName ()
 Retrieve the famliy name.
More...
 
Font.FontTypes GetFontType (PDFDoc document)
 Get font type.
More...
 
string GetName ()
 Retrieve the postscript name.
More...
 
Font.StandardID GetStandard14Font (PDFDoc document)
 Get standard font ID.
More...
 
int GetStyles (PDFDoc document)
 Get font styles.
More...
 
bool IsBold ()
 Judge whether current font is bold or not.
More...
 
bool IsEmbedded (PDFDoc document)
 Judge whether current font is embedded in a specified PDF document or not.
More...
 
bool IsEmpty ()
 Check whether current object is empty or not.
More...
 
bool IsItalic ()
 Judge whether current font object is italic or not.
More...
 
bool IsStandardFont (PDFDoc document)
 Check whether current font is a standard font.
More...
 
bool IsSupportEmbedded (PDFDoc document)
 Check whether current font is supported to be embedded to the specified PDF document or not.
More...
 
bool IsVertWriting (PDFDoc document)
 Check whether current font is vertical writing.
More...
 

Detailed Description

In PDF document, font is used for drawing text in PDF page.
This class represents font used in Foxit PDF SDK. This class offers different constructor for user to construct a new font object, by specified parameters, by standard font ID, or from a font file path. A font object can also be retrieved directly from other object (such as free text annotation, a text graphics object, etc) in a PDF document. This class also offers some functions to get some basic information from a font.

Member Enumeration Documentation

◆ Charset

Enumeration for font charset.

Values of this enumeration should be used alone.

Enumerator
e_CharsetANSI 

Font charset: ANSI (United States, Western Europe).

e_CharsetDefault 

Font charset: System default, for unknown or mapping purpose.

e_CharsetSymbol 

Font charset: Standard symbols.

e_CharsetShift_JIS 

Font charset: Japanese (Shift-JIS).

e_CharsetHangeul 

Font charset: Korean (Wansung).

e_CharsetGB2312 

Font charset: Simplified Chinese.

e_CharsetChineseBig5 

Font charset: Traditional Chinese.

e_CharsetThai 

Font charset: Thai.

e_CharsetEastEurope 

Font charset: Eastern European.

e_CharsetRussian 

Font charset: Russian.

e_CharsetGreek 

Font charset: Greek.

e_CharsetTurkish 

Font charset: Turkish.

e_CharsetHebrew 

Font charset: Hebrew.

e_CharsetArabic 

Font charset: Arabic.

e_CharsetBaltic 

Font charset: Baltic.

◆ CIDCharset

Enumeration for CID font charset.

Values of this enumeration should be used alone.

Enumerator
e_CIDCharsetUnknown 

CID Font charset: Unknown.

e_CIDCharsetGB1 

CID Font charset: Adobe-GB1.

e_CIDCharsetCNS1 

CID Font charset: Adobe-CNS1.

e_CIDCharsetJAPAN1 

CID Font charset: Adobe-Japan1.

e_CIDCharsetKOREA1 

CID Font charset: Adobe-Korea1.

e_CIDCharsetUNICODE 

CID Font charset: Unicode.

◆ FontTypes

Enumeration for font type.

Values of this enumeration can be used alone .

Enumerator
e_FontTypeType1 

Font type: Type1.

e_FontTypeTrueType 

Font type: TrueType.

e_FontTypeType3 

Font type: Type3.

e_FontTypeCIDFont 

Font type: CID font.

◆ StandardID

Enumeration for standard font ID.

Values of this enumeration should be used alone.

Enumerator
e_StdIDCourier 

Standard font: Courier.

e_StdIDCourierB 

Standard font: Courier-Bold.

e_StdIDCourierBI 

Standard font: Courier-BoldOblique, Bold italic.

e_StdIDCourierI 

Standard font: Courier-Oblique, Italic.

e_StdIDHelvetica 

Standard font: Helvetica.

e_StdIDHelveticaB 

Standard font: Helvetica-Bold.

e_StdIDHelveticaBI 

Standard font: Helvetica-BoldOblique, Bold italic.

e_StdIDHelveticaI 

Standard font: Helvetica-Oblique, Italic.

e_StdIDTimes 

Standard font: Times-Roman.

e_StdIDTimesB 

Standard font: Times-Bold.

e_StdIDTimesBI 

Standard font: Times-BoldItalic.

e_StdIDTimesI 

Standard font: Times-Italic.

e_StdIDSymbol 

Standard font: Symbol.

e_StdIDZapfDingbats 

Standard font: ZapfDingbats.

◆ Styles

Enumeration for font styles.

Values of this enumeration can be used alone or in combination.

Enumerator
e_StyleFixedPitch 

Font style: fixed pitch.

e_StyleSerif 

Font style: serif.

e_StyleSymbolic 

Font style: symbolic.

e_StyleScript 

Font style: script.

e_StyleNonSymbolic 

Font style: non-symbolic.

e_StyleItalic 

Font style: italic.

e_StyleAllCap 

Font style: all cap.

e_StylesSmallCap 

Font style: small cap.

e_StylesBold 

Font style: force bold.

Constructor & Destructor Documentation

◆ Font() [1/4]

foxit.common.Font.Font ( string  name,
int  styles,
Font.Charset  charset,
int  weight 
)
inline

Constructor, with given attribute.

This function is to construct font based on system fonts.

Parameters
[in]nameThe PostScript name of the font to be created.
[in]stylesFont styles. Please refer to values starting from foxit.common.Font.Styles.e_StyleFixedPitch and this can be one or a combination of these values.
[in]charsetThe charset of the font to be created. Please refer to values starting from foxit.common.Font.Charset.e_CharsetANSI and this should be one of these values.
[in]weightOriginal font weight. 0 means unspecified.

◆ Font() [2/4]

foxit.common.Font.Font ( Font.StandardID  font_id)
inline

Constructor, by a standard font ID.

Parameters
[in]font_idStandard font ID of the font to be created. Please refer to values starting from foxit.common.Font.StandardID.e_StdIDCourier and this should be one of these values.

◆ Font() [3/4]

foxit.common.Font.Font ( string  font_file_path,
int  face_index,
Font.Charset  charset 
)
inline

Constructor, from a font file.

Parameters
[in]font_file_pathA full path to an existing font file.
[in]face_indexThe zero-based face index. Valid range: from 0 to (face_count-1). Please call the system functions to get the face_count.
[in]charsetThe charset of the font to be created. Please refer to values starting from foxit.common.Font.Charset.e_CharsetANSI and this should be one of these values.

◆ Font() [4/4]

foxit.common.Font.Font ( Font  other)
inline

Constructor, with another font object.

Parameters
[in]otherAnother font object.

Member Function Documentation

◆ Embed()

Font foxit.common.Font.Embed ( PDFDoc  document)
inline

Embed current font to the specified PDF document.

Parameters
[in]documentA valid PDF document object.
Returns
The embedded font.

◆ GetAscent()

int foxit.common.Font.GetAscent ( )
inline

Get the ascent value, in 1/1000 of em size (PDF units).

Returns
The ascent value, in 1/1000 of em size (PDF units).

◆ GetBaseFontName()

string foxit.common.Font.GetBaseFontName ( PDFDoc  document)
inline

Get base font name.

Parameters
[in]documentA valid PDF document object.
Returns
Base font name.

◆ GetCharBBox() [1/2]

RectI foxit.common.Font.GetCharBBox ( int  unicode)
inline

Get the bounding box of a character specified by unicode.

Parameters
[in]unicodeA character unicode value.
Returns
The character bounding box.

◆ GetCharBBox() [2/2]

RectI foxit.common.Font.GetCharBBox ( int  unicode,
PDFDoc  document 
)
inline

Get the bounding box of a character(specified by unicode) in a PDF document.

Parameters
[in]unicodeA character unicode value.
[in]documentA valid PDF document object.
Returns
The character bounding box.

◆ GetCharWidth() [1/2]

float foxit.common.Font.GetCharWidth ( int  unicode)
inline

Get the width (in 1/1000 of em size (PDF units)) of a character specified by unicode.

Parameters
[in]unicodeA character unicode value.
Returns
The character width, in 1/1000 of em size (PDF units).

◆ GetCharWidth() [2/2]

float foxit.common.Font.GetCharWidth ( int  unicode,
PDFDoc  document 
)
inline

Get the width (in 1/1000 of em size, as PDF units) of a character (specified by unicode) in a PDF document.

Parameters
[in]unicodeA character unicode value.
[in]documentA valid PDF document object.
Returns
The character width, in 1/1000 of em size (PDF units).

◆ GetCIDCharset()

Font.CIDCharset foxit.common.Font.GetCIDCharset ( PDFDoc  document)
inline

Get CID font charset.

Applicable for CID based fonts. For rest type of font, exception foxit.common.ErrorCode.e_ErrUnsupported will be thrown.

Parameters
[in]documentA valid PDF document object.
Returns
Font charset. Please refer to values starting from foxit.common.Font.CIDCharset.e_CIDCharsetUnknown and this would be one of these values.

◆ GetDescent()

int foxit.common.Font.GetDescent ( )
inline

Get the descent value, in 1/1000 of em size (PDF units).

Returns
The descent value, in 1/1000 of em size (PDF units).

◆ GetFamilyName()

string foxit.common.Font.GetFamilyName ( )
inline

Retrieve the famliy name.

Returns
The famliy name.

◆ GetFontType()

Font.FontTypes foxit.common.Font.GetFontType ( PDFDoc  document)
inline

Get font type.

Parameters
[in]documentA valid PDF document object.
Returns
Font type. Please refer to values starting from foxit.common.Font.FontTypes.e_FontTypeType1 and this would be one of these values.

◆ GetName()

string foxit.common.Font.GetName ( )
inline

Retrieve the postscript name.

Returns
The postscript name.

◆ GetStandard14Font()

Font.StandardID foxit.common.Font.GetStandard14Font ( PDFDoc  document)
inline

Get standard font ID.

Applicable for standard fonts. For rest type of font, exception foxit.common.ErrorCode.e_ErrUnsupported will be thrown.

Parameters
[in]documentA valid PDF document object.
Returns
Standard font ID. Please refer to values starting from foxit.common.Font.StandardID.e_StdIDCourier and this would be one of these values.

◆ GetStyles()

int foxit.common.Font.GetStyles ( PDFDoc  document)
inline

Get font styles.

Parameters
[in]documentA valid PDF document object.
Returns
Font styles. Please refer to values starting from foxit.common.Font.Styles.e_StyleFixedPitch and this would be one or a combination of these values.

◆ IsBold()

bool foxit.common.Font.IsBold ( )
inline

Judge whether current font is bold or not.

Returns
true means current font is bold, while false means not.

◆ IsEmbedded()

bool foxit.common.Font.IsEmbedded ( PDFDoc  document)
inline

Judge whether current font is embedded in a specified PDF document or not.

Parameters
[in]documentA valid PDF document object.
Returns
true means the font is embedded in the specified PDF document, while false means not.

◆ IsEmpty()

bool foxit.common.Font.IsEmpty ( )
inline

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.

◆ IsItalic()

bool foxit.common.Font.IsItalic ( )
inline

Judge whether current font object is italic or not.

Returns
true means current font is italic, while false means not.

◆ IsStandardFont()

bool foxit.common.Font.IsStandardFont ( PDFDoc  document)
inline

Check whether current font is a standard font.

Parameters
[in]documentA valid PDF document object.
Returns
true means current font is a standard font, while false means not.

◆ IsSupportEmbedded()

bool foxit.common.Font.IsSupportEmbedded ( PDFDoc  document)
inline

Check whether current font is supported to be embedded to the specified PDF document or not.

Parameters
[in]documentA valid PDF document object.
Returns
true means current font is supported to be embedded to the specified PDF document, while false means not.

◆ IsVertWriting()

bool foxit.common.Font.IsVertWriting ( PDFDoc  document)
inline

Check whether current font is vertical writing.

Parameters
[in]documentA valid PDF document object.
Returns
true means current font is vertical writing, while false means current font is not vertical writing.