///////////////////////////////////////////////////////////////////////////// // Name: font.h // Purpose: topic overview // Author: wxWidgets team // RCS-ID: $Id$ // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// /*! @page overview_font wxFont overview Class: wxFont, wxFontDialog A font is an object which determines the appearance of text, primarily when drawing text to a window or device context. A font is determined by the following parameters (not all of them have to be specified, of course): @beginDefList @itemdef{Point size, This is the standard way of referring to text size.} @itemdef{Family, Supported families are: @b wxDEFAULT, @b wxDECORATIVE, @b wxROMAN, @b wxSCRIPT, @b wxSWISS, @b wxMODERN. @b wxMODERN is a fixed pitch font; the others are either fixed or variable pitch.} @itemdef{Style, The value can be @b wxNORMAL, @b wxSLANT or @b wxITALIC.} @itemdef{Weight, The value can be @b wxNORMAL, @b wxLIGHT or @b wxBOLD.} @itemdef{Underlining, The value can be @true or @false.} @itemdef{Face name, An optional string specifying the actual typeface to be used. If @NULL, a default typeface will chosen based on the family.} @itemdef{Encoding, The font encoding (see @b wxFONTENCODING_XXX constants and the @ref overview_fontencoding for more details)} @endDefList Specifying a family, rather than a specific typeface name, ensures a degree of portability across platforms because a suitable font will be chosen for the given font family, however it doesn't allow to choose a font precisely as the parameters above don't suffice, in general, to identify all the available fonts and this is where using the native font descriptions may be helpful - see below. Under Windows, the face name can be one of the installed fonts on the user's system. Since the choice of fonts differs from system to system, either choose standard Windows fonts, or if allowing the user to specify a face name, store the family name with any file that might be transported to a different Windows machine or other platform. @note There is currently a difference between the appearance of fonts on the two platforms, if the mapping mode is anything other than wxMM_TEXT. Under X, font size is always specified in points. Under MS Windows, the unit for text is points but the text is scaled according to the current mapping mode. However, user scaling on a device context will also scale fonts under both environments. @li @ref overview_font_nativeinfo