X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/775a998ed0b5332053b4e3ac850a00dd9727e670..5b087ae2588d2988491d8e0621af82d4c44eb7a8:/docs/latex/wx/font.tex?ds=sidebyside diff --git a/docs/latex/wx/font.tex b/docs/latex/wx/font.tex index 8a4530faf7..014c8b680b 100644 --- a/docs/latex/wx/font.tex +++ b/docs/latex/wx/font.tex @@ -4,6 +4,10 @@ A font is an object which determines the appearance of text. Fonts are used for drawing text to a device context, and setting the appearance of a window's text. +You can retrieve the current system font settings with \helpref{wxSystemSettings}{wxsystemsettings}. + +\helpref{wxSystemSettings}{wxsystemsettings} + \wxheading{Derived from} \helpref{wxGDIObject}{wxgdiobject}\\ @@ -13,6 +17,94 @@ a window's text. +\wxheading{Constants} + +The font flags which can be used during the font creation are: +\begin{verbatim} +enum +{ + // no special flags: font with default weight/slant/anti-aliasing + wxFONTFLAG_DEFAULT = 0, + + // slant flags (default: no slant) + wxFONTFLAG_ITALIC = 1 << 0, + wxFONTFLAG_SLANT = 1 << 1, + + // weight flags (default: medium) + wxFONTFLAG_LIGHT = 1 << 2, + wxFONTFLAG_BOLD = 1 << 3, + + // anti-aliasing flag: force on or off (default: the current system default) + wxFONTFLAG_ANTIALIASED = 1 << 4, + wxFONTFLAG_NOT_ANTIALIASED = 1 << 5, + + // underlined/strikethrough flags (default: no lines) + wxFONTFLAG_UNDERLINED = 1 << 6, + wxFONTFLAG_STRIKETHROUGH = 1 << 7, +}; +\end{verbatim} + +The known font encodings are: +\begin{verbatim} +enum wxFontEncoding +{ + wxFONTENCODING_SYSTEM = -1, // system default + wxFONTENCODING_DEFAULT, // current default encoding + + // ISO8859 standard defines a number of single-byte charsets + wxFONTENCODING_ISO8859_1, // West European (Latin1) + wxFONTENCODING_ISO8859_2, // Central and East European (Latin2) + wxFONTENCODING_ISO8859_3, // Esperanto (Latin3) + wxFONTENCODING_ISO8859_4, // Baltic (old) (Latin4) + wxFONTENCODING_ISO8859_5, // Cyrillic + wxFONTENCODING_ISO8859_6, // Arabic + wxFONTENCODING_ISO8859_7, // Greek + wxFONTENCODING_ISO8859_8, // Hebrew + wxFONTENCODING_ISO8859_9, // Turkish (Latin5) + wxFONTENCODING_ISO8859_10, // Variation of Latin4 (Latin6) + wxFONTENCODING_ISO8859_11, // Thai + wxFONTENCODING_ISO8859_12, // doesn't exist currently, but put it + // here anyhow to make all ISO8859 + // consecutive numbers + wxFONTENCODING_ISO8859_13, // Baltic (Latin7) + wxFONTENCODING_ISO8859_14, // Latin8 + wxFONTENCODING_ISO8859_15, // Latin9 (a.k.a. Latin0, includes euro) + wxFONTENCODING_ISO8859_MAX, + + // Cyrillic charset soup (see http://czyborra.com/charsets/cyrillic.html) + wxFONTENCODING_KOI8, // we don't support any of KOI8 variants + wxFONTENCODING_ALTERNATIVE, // same as MS-DOS CP866 + wxFONTENCODING_BULGARIAN, // used under Linux in Bulgaria + + // what would we do without Microsoft? They have their own encodings + // for DOS + wxFONTENCODING_CP437, // original MS-DOS codepage + wxFONTENCODING_CP850, // CP437 merged with Latin1 + wxFONTENCODING_CP852, // CP437 merged with Latin2 + wxFONTENCODING_CP855, // another cyrillic encoding + wxFONTENCODING_CP866, // and another one + // and for Windows + wxFONTENCODING_CP874, // WinThai + wxFONTENCODING_CP1250, // WinLatin2 + wxFONTENCODING_CP1251, // WinCyrillic + wxFONTENCODING_CP1252, // WinLatin1 + wxFONTENCODING_CP1253, // WinGreek (8859-7) + wxFONTENCODING_CP1254, // WinTurkish + wxFONTENCODING_CP1255, // WinHebrew + wxFONTENCODING_CP1256, // WinArabic + wxFONTENCODING_CP1257, // WinBaltic (same as Latin 7) + wxFONTENCODING_CP12_MAX, + + wxFONTENCODING_UTF7, // UTF-7 Unicode encoding + wxFONTENCODING_UTF8, // UTF-8 Unicode encoding + + wxFONTENCODING_UNICODE, // Unicode - currently used only by + // wxEncodingConverter class + + wxFONTENCODING_MAX +}; +\end{verbatim} + \wxheading{Predefined objects} Objects: @@ -30,7 +122,7 @@ wxSWISS\_FONT} \helpref{wxFont overview}{wxfontoverview}, \helpref{wxDC::SetFont}{wxdcsetfont},\rtfsp \helpref{wxDC::DrawText}{wxdcdrawtext}, \helpref{wxDC::GetTextExtent}{wxdcgettextextent},\rtfsp -\helpref{wxFontDialog}{wxfontdialog} +\helpref{wxFontDialog}{wxfontdialog}, \helpref{wxSystemSettings}{wxsystemsettings} \latexignore{\rtfignore{\wxheading{Members}}} @@ -41,7 +133,7 @@ wxSWISS\_FONT} Default constructor. \func{}{wxFont}{\param{int}{ pointSize}, \param{int}{ family}, \param{int}{ style}, \param{int}{ weight}, - \param{const bool}{ underline = FALSE}, \param{const wxString\& }{faceName = ""}, + \param{const bool}{ underline = false}, \param{const wxString\& }{faceName = ""}, \param{wxFontEncoding }{encoding = wxFONTENCODING\_DEFAULT}} Creates a font object (see \helpref{font encoding @@ -67,7 +159,7 @@ overview}{wxfontencodingoverview} for the meaning of the last parameter). \docparam{weight}{One of {\bf wxNORMAL}, {\bf wxLIGHT} and {\bf wxBOLD}.} -\docparam{underline}{The value can be TRUE or FALSE. At present this has an effect on Windows only.} +\docparam{underline}{The value can be true or false. At present this has an effect on Windows and Motif 2.x only.} \docparam{faceName}{An optional string specifying the actual typeface to be used. If the empty string, a default typeface will chosen based on the family.} @@ -82,7 +174,7 @@ is the encoding set by calls to say, KOI8 to create all fonts by default with KOI8 encoding. Initially, the default application encoding is the same as default system encoding.} \twocolitem{{\bf wxFONTENCODING\_ISO8859\_1...15}}{ISO8859 encodings.} -\twocolitem{{\bf wxFONTENCODING\_KOI8}}{The standard russian encoding for Internet.} +\twocolitem{{\bf wxFONTENCODING\_KOI8}}{The standard Russian encoding for Internet.} \twocolitem{{\bf wxFONTENCODING\_CP1250...1252}}{Windows encodings similar to ISO8859 (but not identical).} \end{twocollist} If the specified encoding isn't available, no font is created. @@ -91,9 +183,7 @@ If the specified encoding isn't available, no font is created. \wxheading{Remarks} If the desired font does not exist, the closest match will be chosen. -Under Windows, only scaleable TrueType fonts are used. - -Underlining only works under Windows at present. +Under Windows, only scalable TrueType fonts are used. See also \helpref{wxDC::SetFont}{wxdcsetfont}, \helpref{wxDC::DrawText}{wxdcdrawtext} and \helpref{wxDC::GetTextExtent}{wxdcgettextextent}. @@ -114,11 +204,18 @@ the application should try to clean up all fonts itself. This is because wxWindows cannot know if a pointer to the font object is stored in an application data structure, and there is a risk of double deletion. +\membersection{wxFont::IsFixedWidth}\label{wxfontisfixedwidth} + +\constfunc{bool}{IsFixedWidth}{\void} + +Returns {\tt true} if the font is a fixed width (or monospaced) font, +{\tt false} if it is a proportional one or font is invalid. + \membersection{wxFont::GetDefaultEncoding}\label{wxfontgetdefaultencoding} \func{static wxFontEncoding}{GetDefaultEncoding}{\void} -Returns the current applications default encoding. +Returns the current application's default encoding. \wxheading{See also} @@ -147,12 +244,16 @@ family identifiers. \helpref{wxFont::SetFamily}{wxfontsetfamily} -\membersection{wxFont::GetFontId}\label{wxfontgetfontid} +\membersection{wxFont::GetNativeFontInfoDesc}\label{wxfontgetnativefontinfodesc} + +\constfunc{wxString}{GetNativeFontInfoDesc}{\void} -\constfunc{int}{GetFontId}{\void} +Returns the platform-dependent string completely describing this font or an +empty string if the font wasn't constructed using the native font description. -Returns the font id, if the portable font system is in operation. See \helpref{Font overview}{wxfontoverview} for -further details. +\wxheading{See also} + +\helpref{wxFont::SetNativeFontInfo}{wxfontsetnativefontinfo} \membersection{wxFont::GetPointSize}\label{wxfontgetpointsize} @@ -179,7 +280,7 @@ styles. \constfunc{bool}{GetUnderlined}{\void} -Returns TRUE if the font is underlined, FALSE otherwise. +Returns true if the font is underlined, false otherwise. \wxheading{See also} @@ -196,6 +297,12 @@ weight identifiers. \helpref{wxFont::SetWeight}{wxfontsetweight} +\membersection{wxFont::Ok}\label{wxfontok} + +\constfunc{bool}{Ok}{\void} + +Returns {\tt true} if this object is a valid font, {\tt false} otherwise. + \membersection{wxFont::SetDefaultEncoding}\label{wxfontsetdefaultencoding} \func{static void}{SetDefaultEncoding}{\param{wxFontEncoding }{encoding}} @@ -252,6 +359,15 @@ Sets the font family. \helpref{wxFont::GetFamily}{wxfontgetfamily}, \helpref{wxFont::SetFaceName}{wxfontsetfacename} +\membersection{wxFont::SetNativeFontInfo}\label{wxfontsetnativefontinfo} + +\func{void}{SetNativeFontInfo}{\param{const wxString\& }{info}} + +Creates the font corresponding to the given native font description string +which must have been previously returned by +\helpref{GetNativeFontInfoDesc}{wxfontgetnativefontinfodesc}. If the string is +invalid, font is unchanged. + \membersection{wxFont::SetPointSize}\label{wxfontsetpointsize} \func{void}{SetPointSize}{\param{int}{ pointSize}} @@ -288,7 +404,7 @@ Sets underlining. \wxheading{Parameters} -\docparam{underlining}{TRUE to underline, FALSE otherwise.} +\docparam{underlining}{true to underline, false otherwise.} \wxheading{See also}