]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/font.tex
more dnd/clipboard docs
[wxWidgets.git] / docs / latex / wx / font.tex
CommitLineData
a660d684
KB
1\section{\class{wxFont}}\label{wxfont}
2
3A font is an object which determines the appearance of text. Fonts are
4used for drawing text to a device context, and setting the appearance of
5a window's text.
6
7\wxheading{Derived from}
8
9\helpref{wxGDIObject}{wxgdiobject}\\
10\helpref{wxObject}{wxobject}
11
954b8ae6
JS
12\wxheading{Include files}
13
14<wx/font.h>
15
20e85460
JS
16\wxheading{Predefined objects}
17
18Objects:
19
20{\bf wxNullFont}
21
22Pointers:
23
24{\bf wxNORMAL\_FONT\\
25wxSMALL\_FONT\\
26wxITALIC\_FONT\\
27wxSWISS\_FONT}
28
a660d684
KB
29\wxheading{See also}
30
31\helpref{wxFont overview}{wxfontoverview}, \helpref{wxDC::SetFont}{wxdcsetfont},\rtfsp
32\helpref{wxDC::DrawText}{wxdcdrawtext}, \helpref{wxDC::GetTextExtent}{wxdcgettextextent},\rtfsp
33\helpref{wxFontDialog}{wxfontdialog}
34
35\latexignore{\rtfignore{\wxheading{Members}}}
36
37\membersection{wxFont::wxFont}\label{wxfontconstr}
38
39\func{}{wxFont}{\void}
40
41Default constructor.
42
eaaa6a06 43\func{}{wxFont}{\param{int}{ pointSize}, \param{int}{ family}, \param{int}{ style}, \param{int}{ weight},
0c5d3e1c
VZ
44 \param{const bool}{ underline = FALSE}, \param{const wxString\& }{faceName = ""},
45 \param{wxFontEncoding }{encoding = wxFONTENCODING\_DEFAULT}}
a660d684
KB
46
47Creates a font object.
48
49\wxheading{Parameters}
50
51\docparam{pointSize}{Size in points.}
52
53\docparam{family}{Font family, a generic way of referring to fonts without specifying actual facename. One of:
54
55\twocolwidtha{5cm}
56\begin{twocollist}\itemsep=0pt
57\twocolitem{{\bf wxDEFAULT}}{Chooses a default font.}
58\twocolitem{{\bf wxDECORATIVE}}{A decorative font.}
59\twocolitem{{\bf wxROMAN}}{A formal, serif font.}
60\twocolitem{{\bf wxSCRIPT}}{A handwriting font.}
61\twocolitem{{\bf wxSWISS}}{A sans-serif font.}
62\twocolitem{{\bf wxMODERN}}{A fixed pitch font.}
63\end{twocollist}}
64
65\docparam{style}{One of {\bf wxNORMAL}, {\bf wxSLANT} and {\bf wxITALIC}.}
66
67\docparam{weight}{One of {\bf wxNORMAL}, {\bf wxLIGHT} and {\bf wxBOLD}.}
68
69\docparam{underline}{The value can be TRUE or FALSE. At present this has an effect on Windows only.}
70
71\docparam{faceName}{An optional string specifying the actual typeface to be used. If the empty string,
72a default typeface will chosen based on the family.}
73
0c5d3e1c
VZ
74\docparam{encoding}{An encoding which may be one of
75\twocolwidtha{5cm}
76\begin{twocollist}\itemsep=0pt
77\twocolitem{{\bf wxFONTENCODING\_SYSTEM}}{Default system encoding.}
78\twocolitem{{\bf wxFONTENCODING\_DEFAULT}}{Default application encoding: this
79is the encoding set by calls to
88b1927c 80\helpref{SetDefaultEncoding}{wxfontsetdefaultencoding} and which may be set to,
0c5d3e1c
VZ
81say, KOI8 to create all fonts by default with KOI8 encoding. Initially, the
82default application encoding is the same as default system encoding.}
83\twocolitem{{\bf wxFONTENCODING\_ISO8859\_1...15}}{ISO8859 encodings.}
84\twocolitem{{\bf wxFONTENCODING\_KOI8}}{The standard russian encoding for Internet.}
85\twocolitem{{\bf wxFONTENCODING\_CP1250...1252}}{Windows encodings similar to ISO8859 (but not identical).}
86\end{twocollist}
87If the specified encoding isn't available, no font is created.
88}
89
a660d684
KB
90\wxheading{Remarks}
91
92If the desired font does not exist, the closest match will be chosen.
93Under Windows, only scaleable TrueType fonts are used.
94
95Underlining only works under Windows at present.
96
97See also \helpref{wxDC::SetFont}{wxdcsetfont}, \helpref{wxDC::DrawText}{wxdcdrawtext}
98and \helpref{wxDC::GetTextExtent}{wxdcgettextextent}.
99
100\membersection{wxFont::\destruct{wxFont}}
101
102\func{}{\destruct{wxFont}}{\void}
103
104Destructor.
105
106\wxheading{Remarks}
107
108The destructor may not delete the underlying font object of the native windowing
109system, since wxBrush uses a reference counting system for efficiency.
110
111Although all remaining fonts are deleted when the application exits,
112the application should try to clean up all fonts itself. This is because
113wxWindows cannot know if a pointer to the font object is stored in an
114application data structure, and there is a risk of double deletion.
115
116\membersection{wxFont::GetFaceName}\label{wxfontgetfacename}
117
118\constfunc{wxString}{GetFaceName}{\void}
119
120Returns the typeface name associated with the font, or the empty string if there is no
121typeface information.
122
123\wxheading{See also}
124
125\helpref{wxFont::SetFaceName}{wxfontsetfacename}
126
127\membersection{wxFont::GetFamily}\label{wxfontgetfamily}
128
129\constfunc{int}{GetFamily}{\void}
130
131Gets the font family. See \helpref{wxFont::wxFont}{wxfontconstr} for a list of valid
132family identifiers.
133
134\wxheading{See also}
135
136\helpref{wxFont::SetFamily}{wxfontsetfamily}
137
138\membersection{wxFont::GetFontId}\label{wxfontgetfontid}
139
140\constfunc{int}{GetFontId}{\void}
141
142Returns the font id, if the portable font system is in operation. See \helpref{Font overview}{wxfontoverview} for
143further details.
144
145\membersection{wxFont::GetPointSize}\label{wxfontgetpointsize}
146
147\constfunc{int}{GetPointSize}{\void}
148
149Gets the point size.
150
151\wxheading{See also}
152
153\helpref{wxFont::SetPointSize}{wxfontsetpointsize}
154
155\membersection{wxFont::GetStyle}\label{wxfontgetstyle}
156
157\constfunc{int}{GetStyle}{\void}
158
159Gets the font style. See \helpref{wxFont::wxFont}{wxfontconstr} for a list of valid
160styles.
161
162\wxheading{See also}
163
164\helpref{wxFont::SetStyle}{wxfontsetstyle}
165
166\membersection{wxFont::GetUnderlined}\label{wxfontgetunderlined}
167
168\constfunc{bool}{GetUnderlined}{\void}
169
170Returns TRUE if the font is underlined, FALSE otherwise.
171
172\wxheading{See also}
173
174\helpref{wxFont::SetUnderlined}{wxfontsetunderlined}
175
176\membersection{wxFont::GetWeight}\label{wxfontgetweight}
177
178\constfunc{int}{GetWeight}{\void}
179
180Gets the font weight. See \helpref{wxFont::wxFont}{wxfontconstr} for a list of valid
181weight identifiers.
182
183\wxheading{See also}
184
185\helpref{wxFont::SetWeight}{wxfontsetweight}
186
88b1927c
JS
187\membersection{wxFont::SetDefaultEncoding}\label{wxfontsetdefaultencoding}
188
189\func{static void}{SetDefaultEncoding}{\param{wxFontEncoding }{encoding}}
190
191Sets the default font encoding.
192
a660d684
KB
193\membersection{wxFont::SetFaceName}\label{wxfontsetfacename}
194
195\func{void}{SetFaceName}{\param{const wxString\& }{faceName}}
196
197Sets the facename for the font.
198
199\wxheading{Parameters}
200
201\docparam{faceName}{A valid facename, which should be on the end-user's system.}
202
203\wxheading{Remarks}
204
205To avoid portability problems, don't rely on a specific face, but specify the font family
206instead or as well. A suitable font will be found on the end-user's system. If both the
207family and the facename are specified, wxWindows will first search for the specific face,
208and then for a font belonging to the same family.
209
210\wxheading{See also}
211
212\helpref{wxFont::GetFaceName}{wxfontgetfacename}, \helpref{wxFont::SetFamily}{wxfontsetfamily}
213
214\membersection{wxFont::SetFamily}\label{wxfontsetfamily}
215
eaaa6a06 216\func{void}{SetFamily}{\param{int}{ family}}
a660d684
KB
217
218Sets the font family.
219
220\wxheading{Parameters}
221
222\docparam{family}{One of:
223
224\twocolwidtha{5cm}
225\begin{twocollist}\itemsep=0pt
226\twocolitem{{\bf wxDEFAULT}}{Chooses a default font.}
227\twocolitem{{\bf wxDECORATIVE}}{A decorative font.}
228\twocolitem{{\bf wxROMAN}}{A formal, serif font.}
229\twocolitem{{\bf wxSCRIPT}}{A handwriting font.}
230\twocolitem{{\bf wxSWISS}}{A sans-serif font.}
231\twocolitem{{\bf wxMODERN}}{A fixed pitch font.}
232\end{twocollist}}
233
234\wxheading{See also}
235
236\helpref{wxFont::GetFamily}{wxfontgetfamily}, \helpref{wxFont::SetFaceName}{wxfontsetfacename}
237
238\membersection{wxFont::SetPointSize}\label{wxfontsetpointsize}
239
eaaa6a06 240\func{void}{SetPointSize}{\param{int}{ pointSize}}
a660d684
KB
241
242Sets the point size.
243
244\wxheading{Parameters}
245
246\docparam{pointSize}{Size in points.}
247
248\wxheading{See also}
249
250\helpref{wxFont::GetPointSize}{wxfontgetpointsize}
251
252\membersection{wxFont::SetStyle}\label{wxfontsetstyle}
253
eaaa6a06 254\func{void}{SetStyle}{\param{int}{ style}}
a660d684
KB
255
256Sets the font style.
257
258\wxheading{Parameters}
259
260\docparam{style}{One of {\bf wxNORMAL}, {\bf wxSLANT} and {\bf wxITALIC}.}
261
262\wxheading{See also}
263
264\helpref{wxFont::GetStyle}{wxfontgetstyle}
265
266\membersection{wxFont::SetUnderlined}\label{wxfontsetunderlined}
267
268\func{void}{SetUnderlined}{\param{const bool}{ underlined}}
269
270Sets underlining.
271
272\wxheading{Parameters}
273
274\docparam{underlining}{TRUE to underline, FALSE otherwise.}
275
276\wxheading{See also}
277
278\helpref{wxFont::GetUnderlined}{wxfontgetunderlined}
279
280\membersection{wxFont::SetWeight}\label{wxfontsetweight}
281
eaaa6a06 282\func{void}{SetWeight}{\param{int}{ weight}}
a660d684
KB
283
284Sets the font weight.
285
286\wxheading{Parameters}
287
288\docparam{weight}{One of {\bf wxNORMAL}, {\bf wxLIGHT} and {\bf wxBOLD}.}
289
290\wxheading{See also}
291
292\helpref{wxFont::GetWeight}{wxfontgetweight}
293
294\membersection{wxFont::operator $=$}\label{wxfontassignment}
295
296\func{wxFont\&}{operator $=$}{\param{const wxFont\& }{font}}
297
298Assignment operator, using reference counting. Returns a reference
299to `this'.
300
301\membersection{wxFont::operator $==$}\label{wxfontequals}
302
303\func{bool}{operator $==$}{\param{const wxFont\& }{font}}
304
305Equality operator. Two fonts are equal if they contain pointers
306to the same underlying font data. It does not compare each attribute,
307so two indefontdently-created fonts using the same parameters will
308fail the test.
309
310\membersection{wxFont::operator $!=$}\label{wxfontnotequals}
311
312\func{bool}{operator $!=$}{\param{const wxFont\& }{font}}
313
314Inequality operator. Two fonts are not equal if they contain pointers
315to different underlying font data. It does not compare each attribute.
316
317