Microsoft Foundation Classes (mfc.hlp) (
Table of Contents;
Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
CDC::DrawText
◄CDC► ◄Up► ◄Contents► ◄Index► ◄Back►
──Microsoft Foundation Classes──────────────────────────────────────────────
int DrawText( const char FAR* lpString, int nCount, LPRECT lpRect,
UINT nFormat );
Parameter Description
<lpString> Points to the string to be drawn. If <nCount> is -1, the
string must be null-terminated.
<nCount> Specifies the number of bytes in the string. If <nCount> is
-1, then <lpString> is assumed to be a long pointer to a
null-terminated string and DrawText computes the character
count automatically.
<lpRect> Points to a ◄RECT► structure or ◄CRect► object that contains
the rectangle (in logical coordinates) in which the text is
to be formatted.
<nFormat> Specifies the method of formatting the text. It can be any
combination of the following values (combine using the
bitwise-OR operator):
Value Meaning
DT_BOTTOM Specifies bottom-justified text. This
value must be combined with
DT_SINGLELINE.
DT_CALCRECT Determines the width and height of the
rectangle. If there are multiple lines
of text, DrawText will use the width of
the rectangle pointed to by <lpRect>
and extend the base of the rectangle to
bound the last line of text. If there
is only one line of text, DrawText will
modify the right side of the rectangle
so that it bounds the last character in
the line. In either case, DrawText
returns the height of the formatted
text but does not draw the text.
DT_CENTER Centers text horizontally.
DT_EXPANDTABS Expands tab characters. The default
number of characters per tab is eight.
DT_EXTERNALLEADING Includes the font's external leading in
the line height. Normally, external
leading is not included in the height
of a line of text.
DT_LEFT Aligns text flush-left.
DT_NOCLIP Draws without clipping. DrawText is
somewhat faster when DT_NOCLIP is
used.
DT_NOPREFIX Turns off processing of prefix
characters. Normally, DrawText
interprets the ampersand (&)
mnemonic-prefix character as a
directive to underscore the character
that follows, and the two-ampersand
(&&) mnemonic-prefix characters as a
directive to print a single ampersand.
By specifiying DT_NOPREFIX this
processing is turned off.
DT_RIGHT Aligns text flush-right.
DT_SINGLELINE Specifies single line only. Carriage
returns and linefeeds do not break the
line.
DT_TABSTOP Sets tab stops. The high-order byte of
<nFormat> is the number of characters
for each tab. The default number of
characters per tab is eight.
DT_TOP Specifies top-justified text (single
line only).
DT_VCENTER Specifies vertically centered text
(single line only).
DT_WORDBREAK Specifies word-breaking. Lines are
automatically broken between words if a
word would extend past the edge of the
rectangle specified by <lpRect>. A
carriage return──linefeed sequence will
also break the line.
Note that the values DT_CALCRECT, DT_EXTERNALLEADING,
DT_INTERNAL, DT_NOCLIP, and DT_NOPREFIX values cannot be
used with the DT_TABSTOP value.
Remarks
Draws formatted text in the rectangle specified by <lpRect>. It formats
text by expanding tabs into appropriate spaces, aligning text to the
left, right, or center of the given rectangle, and breaking text into
lines that fit within the given rectangle. The type of formatting is
specified by <nFormat>.
This member function uses the device context's selected font, text
color, and background color to draw the text. Unless the DT_NOCLIP
format is used, DrawText clips the text so that the text does not appear
outside the given rectangle. All formatting is assumed to have multiple
lines unless the DT_SINGLELINE format is given.
If the selected font is too large for the specified rectangle, the
DrawText member function does not attempt to substitute a smaller font.
Return Value
The height of the text.
See Also
◄::DrawText►
-♦-