diff -r 51a74ef9ed63 -r ae94777fff8f Symbian3/SDK/Source/GUID-6DF52DDC-B03C-5971-94C8-0E9BAAB949FD.dita --- a/Symbian3/SDK/Source/GUID-6DF52DDC-B03C-5971-94C8-0E9BAAB949FD.dita Wed Mar 31 11:11:55 2010 +0100 +++ b/Symbian3/SDK/Source/GUID-6DF52DDC-B03C-5971-94C8-0E9BAAB949FD.dita Fri Jun 11 12:39:03 2010 +0100 @@ -1,41 +1,41 @@ - - - - - -Drawing Text

This topic provides examples that demonstrate how to draw a line of text and text in a colored box.

Text

The basic way to draw text is to call CGraphicsContext::DrawText() with a point specifying the bottom left position, as shown below:

Before calling, you must use the graphics context to:

  1. Set the font to use

  2. Set the pen color for the text

// In this example, we use one of the standard font styles -CFont* fontUsed = iEikonEnv->TitleFont(); -gc.UseFont(fontUsed); - -gc.SetPenColor(KRgbBlack); - -TPoint pos(50,50); -_LIT(KExampleText,"blacktext"); -gc.DrawText(KExampleText,pos);
Text in a box

To draw text in a box, you must specify:

  • a rectangle to draw the text in

  • an offset from the top of the rectangle to the text baseline: to center the text, add half the height of the rectangle to half the height of the font's ascent

  • the text alignment mode: in the example, left alignment is used

  • a margin: the left margin for left-aligned text, or the right margin for right-aligned text

The following figure show how these fit together:

In addition to the font and pen color, you can also set the brush for filling the box.

... -// Draw some text left justified in a box, -// Offset so text is just inside top of box - -TRect box(20,20,250,100); -TInt baseline = box.Height() /2 + fontUsed->FontMaxAscent()/2; - -TInt margin=10; // left margin is ten pixels - -gc.SetBrushStyle(CGraphicsContext::ESolidBrush); -gc.SetBrushColor(KRgbDarkGray); -gc.SetPenColor(KRgbWhite); - -_LIT(KExampleText,"Whitetextleftjustified"); -gc.DrawText(KExampleText, - box, - baseline, - CGraphicsContext::ELeft, - margin); - -...
Drawing + + + + + +Drawing Text

This topic provides examples that demonstrate how to draw a line of text and text in a colored box.

Text

The basic way to draw text is to call CGraphicsContext::DrawText() with a point specifying the bottom left position, as shown below:

Before calling, you must use the graphics context to:

  1. Set the font to use

  2. Set the pen color for the text

// In this example, we use one of the standard font styles +CFont* fontUsed = iEikonEnv->TitleFont(); +gc.UseFont(fontUsed); + +gc.SetPenColor(KRgbBlack); + +TPoint pos(50,50); +_LIT(KExampleText,"blacktext"); +gc.DrawText(KExampleText,pos);
Text in a box

To draw text in a box, you must specify:

  • a rectangle to draw the text in

  • an offset from the top of the rectangle to the text baseline: to center the text, add half the height of the rectangle to half the height of the font's ascent

  • the text alignment mode: in the example, left alignment is used

  • a margin: the left margin for left-aligned text, or the right margin for right-aligned text

The following figure show how these fit together:

In addition to the font and pen color, you can also set the brush for filling the box.

... +// Draw some text left justified in a box, +// Offset so text is just inside top of box + +TRect box(20,20,250,100); +TInt baseline = box.Height() /2 + fontUsed->FontMaxAscent()/2; + +TInt margin=10; // left margin is ten pixels + +gc.SetBrushStyle(CGraphicsContext::ESolidBrush); +gc.SetBrushColor(KRgbDarkGray); +gc.SetPenColor(KRgbWhite); + +_LIT(KExampleText,"Whitetextleftjustified"); +gc.DrawText(KExampleText, + box, + baseline, + CGraphicsContext::ELeft, + margin); + +...
Drawing to a Graphics Context Tutorials Drawing and Graphics Contexts
\ No newline at end of file