Version: 3.3.0
font.h File Reference

Classes

class  wxFontInfo
 This class is a helper used for wxFont creation using named parameter idiom: it allows specifying various wxFont attributes using the chained calls to its clearly named methods instead of passing them in the fixed order to wxFont constructors. More...
 
class  wxFont
 A font is an object which determines the appearance of text. More...
 
class  wxFontList
 A font list is a list containing all fonts which have been created. More...
 

Enumerations

enum  wxFontFamily {
  wxFONTFAMILY_DEFAULT = wxDEFAULT ,
  wxFONTFAMILY_DECORATIVE = wxDECORATIVE ,
  wxFONTFAMILY_ROMAN = wxROMAN ,
  wxFONTFAMILY_SCRIPT = wxSCRIPT ,
  wxFONTFAMILY_SWISS = wxSWISS ,
  wxFONTFAMILY_MODERN = wxMODERN ,
  wxFONTFAMILY_TELETYPE = wxTELETYPE ,
  wxFONTFAMILY_MAX ,
  wxFONTFAMILY_UNKNOWN = wxFONTFAMILY_MAX
}
 Standard font families: these are used mainly during wxFont creation to specify the generic properties of the font without hardcoding in the sources a specific face name. More...
 
enum  wxFontStyle {
  wxFONTSTYLE_NORMAL = wxNORMAL ,
  wxFONTSTYLE_ITALIC = wxITALIC ,
  wxFONTSTYLE_SLANT = wxSLANT ,
  wxFONTSTYLE_MAX
}
 Font styles. More...
 
enum  wxFontWeight {
  wxFONTWEIGHT_INVALID = 0 ,
  wxFONTWEIGHT_THIN = 100 ,
  wxFONTWEIGHT_EXTRALIGHT = 200 ,
  wxFONTWEIGHT_LIGHT = 300 ,
  wxFONTWEIGHT_NORMAL = 400 ,
  wxFONTWEIGHT_MEDIUM = 500 ,
  wxFONTWEIGHT_SEMIBOLD = 600 ,
  wxFONTWEIGHT_BOLD = 700 ,
  wxFONTWEIGHT_EXTRABOLD = 800 ,
  wxFONTWEIGHT_HEAVY = 900 ,
  wxFONTWEIGHT_EXTRAHEAVY = 1000 ,
  wxFONTWEIGHT_MAX = wxFONTWEIGHT_EXTRAHEAVY
}
 Font weights. More...
 
enum  wxFontSymbolicSize {
  wxFONTSIZE_XX_SMALL = -3 ,
  wxFONTSIZE_X_SMALL ,
  wxFONTSIZE_SMALL ,
  wxFONTSIZE_MEDIUM ,
  wxFONTSIZE_LARGE ,
  wxFONTSIZE_X_LARGE ,
  wxFONTSIZE_XX_LARGE
}
 Symbolic font sizes. More...
 
enum  wxFontFlag {
  wxFONTFLAG_DEFAULT = 0 ,
  wxFONTFLAG_ITALIC = 1 << 0 ,
  wxFONTFLAG_SLANT = 1 << 1 ,
  wxFONTFLAG_LIGHT = 1 << 2 ,
  wxFONTFLAG_BOLD = 1 << 3 ,
  wxFONTFLAG_ANTIALIASED = 1 << 4 ,
  wxFONTFLAG_NOT_ANTIALIASED = 1 << 5 ,
  wxFONTFLAG_UNDERLINED = 1 << 6 ,
  wxFONTFLAG_STRIKETHROUGH = 1 << 7 ,
  wxFONTFLAG_MASK
}
 The font flag bits for the new font ctor accepting one combined flags word. More...
 
enum  wxFontEncoding {
  wxFONTENCODING_SYSTEM = -1 ,
  wxFONTENCODING_DEFAULT ,
  wxFONTENCODING_ISO8859_1 ,
  wxFONTENCODING_ISO8859_2 ,
  wxFONTENCODING_ISO8859_3 ,
  wxFONTENCODING_ISO8859_4 ,
  wxFONTENCODING_ISO8859_5 ,
  wxFONTENCODING_ISO8859_6 ,
  wxFONTENCODING_ISO8859_7 ,
  wxFONTENCODING_ISO8859_8 ,
  wxFONTENCODING_ISO8859_9 ,
  wxFONTENCODING_ISO8859_10 ,
  wxFONTENCODING_ISO8859_11 ,
  wxFONTENCODING_ISO8859_12 ,
  wxFONTENCODING_ISO8859_13 ,
  wxFONTENCODING_ISO8859_14 ,
  wxFONTENCODING_ISO8859_15 ,
  wxFONTENCODING_ISO8859_MAX ,
  wxFONTENCODING_KOI8 ,
  wxFONTENCODING_KOI8_U ,
  wxFONTENCODING_ALTERNATIVE ,
  wxFONTENCODING_BULGARIAN ,
  wxFONTENCODING_CP437 ,
  wxFONTENCODING_CP850 ,
  wxFONTENCODING_CP852 ,
  wxFONTENCODING_CP855 ,
  wxFONTENCODING_CP866 ,
  wxFONTENCODING_CP874 ,
  wxFONTENCODING_CP932 ,
  wxFONTENCODING_CP936 ,
  wxFONTENCODING_CP949 ,
  wxFONTENCODING_CP950 ,
  wxFONTENCODING_CP1250 ,
  wxFONTENCODING_CP1251 ,
  wxFONTENCODING_CP1252 ,
  wxFONTENCODING_CP1253 ,
  wxFONTENCODING_CP1254 ,
  wxFONTENCODING_CP1255 ,
  wxFONTENCODING_CP1256 ,
  wxFONTENCODING_CP1257 ,
  wxFONTENCODING_CP1258 ,
  wxFONTENCODING_CP1361 ,
  wxFONTENCODING_CP12_MAX ,
  wxFONTENCODING_UTF7 ,
  wxFONTENCODING_UTF8 ,
  wxFONTENCODING_EUC_JP ,
  wxFONTENCODING_UTF16BE ,
  wxFONTENCODING_UTF16LE ,
  wxFONTENCODING_UTF32BE ,
  wxFONTENCODING_UTF32LE ,
  wxFONTENCODING_MACROMAN ,
  wxFONTENCODING_MACJAPANESE ,
  wxFONTENCODING_MACCHINESETRAD ,
  wxFONTENCODING_MACKOREAN ,
  wxFONTENCODING_MACARABIC ,
  wxFONTENCODING_MACHEBREW ,
  wxFONTENCODING_MACGREEK ,
  wxFONTENCODING_MACCYRILLIC ,
  wxFONTENCODING_MACDEVANAGARI ,
  wxFONTENCODING_MACGURMUKHI ,
  wxFONTENCODING_MACGUJARATI ,
  wxFONTENCODING_MACORIYA ,
  wxFONTENCODING_MACBENGALI ,
  wxFONTENCODING_MACTAMIL ,
  wxFONTENCODING_MACTELUGU ,
  wxFONTENCODING_MACKANNADA ,
  wxFONTENCODING_MACMALAJALAM ,
  wxFONTENCODING_MACSINHALESE ,
  wxFONTENCODING_MACBURMESE ,
  wxFONTENCODING_MACKHMER ,
  wxFONTENCODING_MACTHAI ,
  wxFONTENCODING_MACLAOTIAN ,
  wxFONTENCODING_MACGEORGIAN ,
  wxFONTENCODING_MACARMENIAN ,
  wxFONTENCODING_MACCHINESESIMP ,
  wxFONTENCODING_MACTIBETAN ,
  wxFONTENCODING_MACMONGOLIAN ,
  wxFONTENCODING_MACETHIOPIC ,
  wxFONTENCODING_MACCENTRALEUR ,
  wxFONTENCODING_MACVIETNAMESE ,
  wxFONTENCODING_MACARABICEXT ,
  wxFONTENCODING_MACSYMBOL ,
  wxFONTENCODING_MACDINGBATS ,
  wxFONTENCODING_MACTURKISH ,
  wxFONTENCODING_MACCROATIAN ,
  wxFONTENCODING_MACICELANDIC ,
  wxFONTENCODING_MACROMANIAN ,
  wxFONTENCODING_MACCELTIC ,
  wxFONTENCODING_MACGAELIC ,
  wxFONTENCODING_MACKEYBOARD ,
  wxFONTENCODING_ISO2022_JP ,
  wxFONTENCODING_MAX ,
  wxFONTENCODING_MACMIN = wxFONTENCODING_MACROMAN ,
  wxFONTENCODING_MACMAX = wxFONTENCODING_MACKEYBOARD ,
  wxFONTENCODING_UTF16 ,
  wxFONTENCODING_UTF32 ,
  wxFONTENCODING_UNICODE ,
  wxFONTENCODING_GB2312 = wxFONTENCODING_CP936 ,
  wxFONTENCODING_BIG5 = wxFONTENCODING_CP950 ,
  wxFONTENCODING_SHIFT_JIS = wxFONTENCODING_CP932 ,
  wxFONTENCODING_EUC_KR = wxFONTENCODING_CP949 ,
  wxFONTENCODING_JOHAB = wxFONTENCODING_CP1361 ,
  wxFONTENCODING_VIETNAMESE = wxFONTENCODING_CP1258
}
 Font encodings. More...
 

Functions

bool wxFromString (const wxString &string, wxFont *font)
 Converts string to a wxFont best represented by the given string. More...
 
wxString wxToString (const wxFont &font)
 Converts the given wxFont into a string. More...
 

Variables

wxFont wxNullFont
 An empty wxFont. More...
 
wxFontwxNORMAL_FONT
 Equivalent to wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT). More...
 
wxFontwxSMALL_FONT
 A font using the wxFONTFAMILY_SWISS family and 2 points smaller than wxNORMAL_FONT. More...
 
wxFontwxITALIC_FONT
 A font using the wxFONTFAMILY_ROMAN family and wxFONTSTYLE_ITALIC style and of the same size of wxNORMAL_FONT. More...
 
wxFontwxSWISS_FONT
 A font identic to wxNORMAL_FONT except for the family used which is wxFONTFAMILY_SWISS. More...
 
wxFontListwxTheFontList
 The global wxFontList instance. More...
 

Enumeration Type Documentation

◆ wxFontEncoding

Font encodings.

See wxFont::SetEncoding().

Enumerator
wxFONTENCODING_SYSTEM 

Default system encoding.

Default system encoding.

wxFONTENCODING_DEFAULT 

Default application encoding: this is the encoding set by calls to wxFont::SetDefaultEncoding().

Initially, the default application encoding is the same as default system encoding.

wxFONTENCODING_ISO8859_1 

West European (Latin 1)

wxFONTENCODING_ISO8859_2 

Central and East European (Latin 2)

wxFONTENCODING_ISO8859_3 

Esperanto (Latin 3)

wxFONTENCODING_ISO8859_4 

Baltic (old) (Latin 4)

wxFONTENCODING_ISO8859_5 

Cyrillic.

wxFONTENCODING_ISO8859_6 

Arabic.

wxFONTENCODING_ISO8859_7 

Greek.

wxFONTENCODING_ISO8859_8 

Hebrew.

wxFONTENCODING_ISO8859_9 

Turkish (Latin 5)

wxFONTENCODING_ISO8859_10 

Variation of Latin 4 (Latin 6)

wxFONTENCODING_ISO8859_11 

Thai.

wxFONTENCODING_ISO8859_12 

Doesn't exist currently, but put it here anyhow to make all ISO-8859 consecutive numbers.

wxFONTENCODING_ISO8859_13 

Baltic (Latin 7)

wxFONTENCODING_ISO8859_14 

Latin 8.

wxFONTENCODING_ISO8859_15 

Latin 9 (a.k.a. Latin 0, includes Euro symbol)

wxFONTENCODING_ISO8859_MAX 
wxFONTENCODING_KOI8 

KOI8 Russian.

wxFONTENCODING_KOI8_U 

KOI8 Ukrainian.

wxFONTENCODING_ALTERNATIVE 

Same as MS-DOS CP866.

wxFONTENCODING_BULGARIAN 

Used under Linux in Bulgaria.

wxFONTENCODING_CP437 

United States (DOS)

wxFONTENCODING_CP850 

Multilingual Latin 1; Western European (DOS)

wxFONTENCODING_CP852 

Latin 2; Central European (DOS)

wxFONTENCODING_CP855 

Cyrillic (primarily Russian)

wxFONTENCODING_CP866 

Russian; Cyrillic (DOS)

wxFONTENCODING_CP874 

Thai (Windows)

wxFONTENCODING_CP932 

Japanese (shift-JIS)

wxFONTENCODING_CP936 

Simplified Chinese (GB2312)

wxFONTENCODING_CP949 

Korean (Unified Hangul Code)

wxFONTENCODING_CP950 

Traditional Chinese (Big5)

wxFONTENCODING_CP1250 

Central European (Windows)

wxFONTENCODING_CP1251 

Cyrillic (Windows)

wxFONTENCODING_CP1252 

Latin 1; Western European (Windows)

wxFONTENCODING_CP1253 

Greek (Windows) (8859-7)

wxFONTENCODING_CP1254 

Turkish (Windows)

wxFONTENCODING_CP1255 

Hebrew (Windows)

wxFONTENCODING_CP1256 

Arabic (Windows)

wxFONTENCODING_CP1257 

Baltic (Windows) (same as Latin 7)

wxFONTENCODING_CP1258 

Vietnamese (Windows) (since 2.9.4)

wxFONTENCODING_CP1361 

Korean (Johab) (since 2.9.4)

wxFONTENCODING_CP12_MAX 
wxFONTENCODING_UTF7 

UTF-7 Unicode encoding.

wxFONTENCODING_UTF8 

UTF-8 Unicode encoding.

wxFONTENCODING_EUC_JP 

Extended Unix Codepage for Japanese.

wxFONTENCODING_UTF16BE 

UTF-16 Big Endian Unicode encoding.

wxFONTENCODING_UTF16LE 

UTF-16 Little Endian Unicode encoding.

wxFONTENCODING_UTF32BE 

UTF-32 Big Endian Unicode encoding.

wxFONTENCODING_UTF32LE 

UTF-32 Little Endian Unicode encoding.

wxFONTENCODING_MACROMAN 

Roman; Western European (Mac)

wxFONTENCODING_MACJAPANESE 

Japanese (Mac)

wxFONTENCODING_MACCHINESETRAD 

Traditional Chinese (Big5, Mac)

wxFONTENCODING_MACKOREAN 

Korean (Mac)

wxFONTENCODING_MACARABIC 

Arabic (Mac)

wxFONTENCODING_MACHEBREW 

Hebrew (Mac)

wxFONTENCODING_MACGREEK 

Greek (Mac)

wxFONTENCODING_MACCYRILLIC 

Cyrillic (Mac)

wxFONTENCODING_MACDEVANAGARI 

Devanagari (Mac)

wxFONTENCODING_MACGURMUKHI 

Gurmukhi (Mac)

wxFONTENCODING_MACGUJARATI 

Gujarati (Mac)

wxFONTENCODING_MACORIYA 

Oriya (Mac)

wxFONTENCODING_MACBENGALI 

Bengali (Mac)

wxFONTENCODING_MACTAMIL 

Tamil (Mac)

wxFONTENCODING_MACTELUGU 

Telugu (Mac)

wxFONTENCODING_MACKANNADA 

Kannada (Mac)

wxFONTENCODING_MACMALAJALAM 

Malajalam (Mac)

wxFONTENCODING_MACSINHALESE 

Sinhalese (Mac)

wxFONTENCODING_MACBURMESE 

Burmese (Mac)

wxFONTENCODING_MACKHMER 

Khmer (Mac)

wxFONTENCODING_MACTHAI 

Thai (Mac)

wxFONTENCODING_MACLAOTIAN 

Laotian (Mac)

wxFONTENCODING_MACGEORGIAN 

Georgian (Mac)

wxFONTENCODING_MACARMENIAN 

Armenian (Mac)

wxFONTENCODING_MACCHINESESIMP 

Simplified Chinese (GB 2312, Mac)

wxFONTENCODING_MACTIBETAN 

Tibetan (Mac)

wxFONTENCODING_MACMONGOLIAN 

Mongolian (Mac)

wxFONTENCODING_MACETHIOPIC 

Ethiopic (Mac)

wxFONTENCODING_MACCENTRALEUR 

Latin 2; Central European (Mac)

wxFONTENCODING_MACVIETNAMESE 

Vietnamese (Mac)

wxFONTENCODING_MACARABICEXT 

Arabic (Mac)

wxFONTENCODING_MACSYMBOL 

Symbol (Mac)

wxFONTENCODING_MACDINGBATS 

Dingbats (Mac)

wxFONTENCODING_MACTURKISH 

Turkish (Mac)

wxFONTENCODING_MACCROATIAN 

Croatian (Mac)

wxFONTENCODING_MACICELANDIC 

Icelandic (Mac)

wxFONTENCODING_MACROMANIAN 

Romanian (Mac)

wxFONTENCODING_MACCELTIC 

Celtic (Mac)

wxFONTENCODING_MACGAELIC 

Gaelic (Mac)

wxFONTENCODING_MACKEYBOARD 
wxFONTENCODING_ISO2022_JP 

ISO-2022-JP JIS encoding.

wxFONTENCODING_MAX 

Highest enumerated encoding value.

wxFONTENCODING_MACMIN 
wxFONTENCODING_MACMAX 
wxFONTENCODING_UTF16 

Native UTF-16.

wxFONTENCODING_UTF32 

Native UTF-32.

wxFONTENCODING_UNICODE 

Alias for the native Unicode encoding on this platform (this is used by wxEncodingConverter and wxUTFFile only for now)

wxFONTENCODING_GB2312 

Simplified Chinese.

wxFONTENCODING_BIG5 

Traditional Chinese.

wxFONTENCODING_SHIFT_JIS 

Japanese Shift JIS.

wxFONTENCODING_EUC_KR 

Korean.

wxFONTENCODING_JOHAB 

Korean Johab (since 2.9.4)

wxFONTENCODING_VIETNAMESE 

Vietnamese (since 2.9.4)

◆ wxFontFamily

Standard font families: these are used mainly during wxFont creation to specify the generic properties of the font without hardcoding in the sources a specific face name.

wxFontFamily thus allows grouping the font face names of fonts with similar properties. Most wxWidgets ports use lists of fonts for each font family inspired by the data taken from http://www.codestyle.org/css/font-family.

Enumerator
wxFONTFAMILY_DEFAULT 

Chooses a default font.

wxFONTFAMILY_DECORATIVE 

A decorative font.

wxFONTFAMILY_ROMAN 

A formal, serif font.

wxFONTFAMILY_SCRIPT 

A handwriting font.

wxFONTFAMILY_SWISS 

A sans-serif font.

wxFONTFAMILY_MODERN 

A fixed pitch font.

Note that wxFont currently does not make distinctions between wxFONTFAMILY_MODERN and wxFONTFAMILY_TELETYPE.

wxFONTFAMILY_TELETYPE 

A teletype (i.e. monospaced) font.

Monospace fonts have a fixed width like typewriters and often have strong angular or block serifs. Monospace font faces are often used code samples and have a simple, functional font style. See also wxFont::IsFixedWidth() for an easy way to test for monospace property.

wxFONTFAMILY_MAX 
wxFONTFAMILY_UNKNOWN 

Invalid font family value, returned by wxFont::GetFamily() when the font is invalid for example.

◆ wxFontFlag

enum wxFontFlag

The font flag bits for the new font ctor accepting one combined flags word.

Enumerator
wxFONTFLAG_DEFAULT 

no special flags: font with default weight/slant/anti-aliasing

wxFONTFLAG_ITALIC 

slant flags (default: no slant)

wxFONTFLAG_SLANT 
wxFONTFLAG_LIGHT 

weight flags (default: medium)

wxFONTFLAG_BOLD 
wxFONTFLAG_ANTIALIASED 

anti-aliasing flag: force on or off (default: the current system default)

wxFONTFLAG_NOT_ANTIALIASED 
wxFONTFLAG_UNDERLINED 

Underlined style (not underlined by default).

wxFONTFLAG_STRIKETHROUGH 

Strike-through style (implemented in MSW, GTK, and wxOSX)

wxFONTFLAG_MASK 

the mask of all currently used flags

◆ wxFontStyle

Font styles.

Enumerator
wxFONTSTYLE_NORMAL 

The font is drawn without slant.

wxFONTSTYLE_ITALIC 

The font is slanted in an italic style.

wxFONTSTYLE_SLANT 

The font is slanted, but in a roman style.

Note that under wxMSW this style is the same as wxFONTSTYLE_ITALIC.

wxFONTSTYLE_MAX 

◆ wxFontSymbolicSize

Symbolic font sizes.

The elements of this enum correspond to CSS absolute size specifications, see http://www.w3.org/TR/CSS21/fonts.html#font-size-props

See also
wxFont::SetSymbolicSize()
Since
2.9.2
Enumerator
wxFONTSIZE_XX_SMALL 

Extra small.

wxFONTSIZE_X_SMALL 

Very small.

wxFONTSIZE_SMALL 

Small.

wxFONTSIZE_MEDIUM 

Normal.

wxFONTSIZE_LARGE 

Large.

wxFONTSIZE_X_LARGE 

Very large.

wxFONTSIZE_XX_LARGE 

Extra large.

◆ wxFontWeight

Font weights.

The values of this enum correspond to the CSS font weight specifications, see https://www.w3.org/TR/css-fonts-4/#font-weight-prop, with the addition of one font weight bolder than heavy

Enumerator
wxFONTWEIGHT_INVALID 

Invalid font weight.

Since
3.1.2
wxFONTWEIGHT_THIN 

Thin font (weight = 100).

Since
3.1.2
wxFONTWEIGHT_EXTRALIGHT 

Extra Light (Ultra Light) font (weight = 200).

Since
3.1.2
wxFONTWEIGHT_LIGHT 

Light font (weight = 300).

wxFONTWEIGHT_NORMAL 

Normal font (weight = 400).

wxFONTWEIGHT_MEDIUM 

Medium font (weight = 500).

Since
3.1.2
wxFONTWEIGHT_SEMIBOLD 

Semi Bold (Demi Bold) font (weight = 600).

Since
3.1.2
wxFONTWEIGHT_BOLD 

Bold font (weight = 700).

wxFONTWEIGHT_EXTRABOLD 

Extra Bold (Ultra Bold) font (weight = 800).

Since
3.1.2
wxFONTWEIGHT_HEAVY 

Heavy (Black) font (weight = 900).

Since
3.1.2
wxFONTWEIGHT_EXTRAHEAVY 

Extra Heavy font (weight = 1000).

Since
3.1.2
wxFONTWEIGHT_MAX 

Variable Documentation

◆ wxITALIC_FONT

wxFont* wxITALIC_FONT

A font using the wxFONTFAMILY_ROMAN family and wxFONTSTYLE_ITALIC style and of the same size of wxNORMAL_FONT.

◆ wxNORMAL_FONT

wxFont* wxNORMAL_FONT

Equivalent to wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT).

See also
wxSystemSettings

◆ wxNullFont

wxFont wxNullFont

An empty wxFont.

◆ wxSMALL_FONT

wxFont* wxSMALL_FONT

A font using the wxFONTFAMILY_SWISS family and 2 points smaller than wxNORMAL_FONT.

◆ wxSWISS_FONT

wxFont* wxSWISS_FONT

A font identic to wxNORMAL_FONT except for the family used which is wxFONTFAMILY_SWISS.

◆ wxTheFontList

wxFontList* wxTheFontList

The global wxFontList instance.