Windcao published with: http://blog.csdn.net/windcao/archive/2007/09/05/1773637.aspx
First look at the code, because some of the original content of the label is wrong,
gc.DrawText(_L("SymbolFont /x671D/x5916/x5927/x8857"),TPoint(x,baseH));
is displayed as gc.DrawText( _L( " SymbolFont g1DY16Y27??57 " ),TPoint(x,baseH));
Actually, /x671D/x5916/x5927/x8857 is the Chinese character Chaowai Dajie.
Get fixed-size fonts:
void
CTestView::Draw(
const
TRect
&
/**/
/*aRect*/
)
const
... {
// Get the standard graphics context
CWindowGc& gc = SystemGc();
// Gets the control's extent
TRect drawRect( Rect());
// Clears the screen
gc.Clear( drawRect );
TInt baseH=0;
TInt incH=10;
TInt x=0;
const CFont* myFont = NULL;
// -------------------------- 拉丁 字体 myFont = LatinPlain12 (); gc.UseFont (myFont); baseH + = myFont -> HeightInPixels () + 1 ; gc.DrawText (_L ( " LatinPlain12 g1DY16Y27 ?? 57 " ), TPoint (x, baseH)); gc.DiscardFont (); myFont = LatinBold12 (); gc.UseFont (myFont); baseH + = myFont -> HeightInPixels () + 1 ; //
gc.DrawText (_L ("LatinBold12 g1DY16Y27 ?? 57"), TPoint (x, baseH)); gc.DrawText (_L ( " LatinBold12 " ), TPoint (x, baseH)); gc.DiscardFont (); myFont = LatinBold13 (); gc.UseFont (myFont); baseH + = myFont -> HeightInPixels () + 1 ; // gc.DrawText (_L ("LatinBold13 g1DY16Y27 ?? 57"), TPoint (x, baseH)); gc.DrawText (_L ( " LatinBold13 " ), TPoint (x, baseH)); gc.DiscardFont (); myFont = LatinBold16 (); gc.UseFont (myFont); baseH + =
myFont->HeightInPixels()+1;
//gc.DrawText(_L("LatinBold16 g1DY16Y2757"),TPoint(x,baseH));
gc.DrawText(_L("LatinBold16"),TPoint(x,baseH));
gc.DiscardFont();
myFont=LatinBold17();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("LatinBold17 g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=LatinBold19();
gc.UseFont( myFont );
baseH + = myFont -> HeightInPixels () + 1 ;
gc.DrawText (_L ( " LatinBold19 g1DY16Y27 ?? 57 " ), TPoint (x, baseH));
gc.DiscardFont ();
myFont = NumberPlain5 ();
gc.UseFont (myFont);
baseH + = myFont -> HeightInPixels () + 1 ;
gc.DrawText (_L ( " 1234567890 " ), TPoint (x, baseH));
gc.DiscardFont ();
myFont = ClockBold30 ();
gc.UseFont (myFont);
baseH + = myFont-> HeightInPixels () + 1 ;
gc.DrawText (_L ( " ClockBold30 g1DY16Y27 ?? 57 " ), TPoint (x, baseH));
gc.DiscardFont ();
myFont = LatinClock14 ();
gc.UseFont (myFont);
baseH + = myFont -> HeightInPixels () + 1 ;
gc.DrawText (_L ( " LatinClock14 g1DY16Y27 ?? 57 " ), TPoint (x, baseH));
gc.DiscardFont ();
// --------------------- 中文 字体 myFont = ApacPlain16 (); gc.UseFont (myFont); baseH + =
myFont->HeightInPixels()+1;
// gc.DrawText(_L("ApacPlain16 g1DY16Y2757"),TPoint(x,baseH));
gc.DrawText(_L("ApacPlain16"),TPoint(x,baseH));
gc.DiscardFont();
myFont=ApacPlain12();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
// gc.DrawText(_L("ApacPlain12 g1DY16Y2757"),TPoint(x,baseH));
gc.DrawText(_L("ApacPlain12"),TPoint(x,baseH));
gc.DiscardFont();
}
... {
// Get the standard graphics context
CWindowGc& gc = SystemGc();
// Gets the control's extent
TRect drawRect( Rect());
// Clears the screen
gc.Clear( drawRect );
TInt baseH=0;
TInt incH=10;
TInt x=0;
const CFont* myFont = NULL;
// -------------------------- 拉丁 字体 myFont = LatinPlain12 (); gc.UseFont (myFont); baseH + = myFont -> HeightInPixels () + 1 ; gc.DrawText (_L ( " LatinPlain12 g1DY16Y27 ?? 57 " ), TPoint (x, baseH)); gc.DiscardFont (); myFont = LatinBold12 (); gc.UseFont (myFont); baseH + = myFont -> HeightInPixels () + 1 ; //
gc.DrawText (_L ("LatinBold12 g1DY16Y27 ?? 57"), TPoint (x, baseH)); gc.DrawText (_L ( " LatinBold12 " ), TPoint (x, baseH)); gc.DiscardFont (); myFont = LatinBold13 (); gc.UseFont (myFont); baseH + = myFont -> HeightInPixels () + 1 ; // gc.DrawText (_L ("LatinBold13 g1DY16Y27 ?? 57"), TPoint (x, baseH)); gc.DrawText (_L ( " LatinBold13 " ), TPoint (x, baseH)); gc.DiscardFont (); myFont = LatinBold16 (); gc.UseFont (myFont); baseH + =
myFont->HeightInPixels()+1;
//gc.DrawText(_L("LatinBold16 g1DY16Y2757"),TPoint(x,baseH));
gc.DrawText(_L("LatinBold16"),TPoint(x,baseH));
gc.DiscardFont();
myFont=LatinBold17();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("LatinBold17 g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=LatinBold19();
gc.UseFont( myFont );
baseH + = myFont -> HeightInPixels () + 1 ;
gc.DrawText (_L ( " LatinBold19 g1DY16Y27 ?? 57 " ), TPoint (x, baseH));
gc.DiscardFont ();
myFont = NumberPlain5 ();
gc.UseFont (myFont);
baseH + = myFont -> HeightInPixels () + 1 ;
gc.DrawText (_L ( " 1234567890 " ), TPoint (x, baseH));
gc.DiscardFont ();
myFont = ClockBold30 ();
gc.UseFont (myFont);
baseH + = myFont-> HeightInPixels () + 1 ;
gc.DrawText (_L ( " ClockBold30 g1DY16Y27 ?? 57 " ), TPoint (x, baseH));
gc.DiscardFont ();
myFont = LatinClock14 ();
gc.UseFont (myFont);
baseH + = myFont -> HeightInPixels () + 1 ;
gc.DrawText (_L ( " LatinClock14 g1DY16Y27 ?? 57 " ), TPoint (x, baseH));
gc.DiscardFont ();
// --------------------- 中文 字体 myFont = ApacPlain16 (); gc.UseFont (myFont); baseH + =
myFont->HeightInPixels()+1;
// gc.DrawText(_L("ApacPlain16 g1DY16Y2757"),TPoint(x,baseH));
gc.DrawText(_L("ApacPlain16"),TPoint(x,baseH));
gc.DiscardFont();
myFont=ApacPlain12();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
// gc.DrawText(_L("ApacPlain12 g1DY16Y2757"),TPoint(x,baseH));
gc.DrawText(_L("ApacPlain12"),TPoint(x,baseH));
gc.DiscardFont();
}
void
CTest2View::Draw(
const
TRect
&
/**/
/*aRect*/
)
const
... {
// Get the standard graphics context
CWindowGc& gc = SystemGc();
// Gets the control's extent
TRect drawRect( Rect());
// Clears the screen
gc.Clear( drawRect );
TInt baseH=0;
TInt incH=10;
TInt x=0;
const CFont* myFont=NULL;
myFont=CEikonEnv::Static()->TitleFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels() +1;
gc.DrawText(_L("TitleFont g1DY16"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->NormalFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("NormalFont g1DY16Y27"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->AnnotationFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("AnnotationFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->LegendFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("LegendFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->SymbolFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("SymbolFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->DenseFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("DenseFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
}
... {
// Get the standard graphics context
CWindowGc& gc = SystemGc();
// Gets the control's extent
TRect drawRect( Rect());
// Clears the screen
gc.Clear( drawRect );
TInt baseH=0;
TInt incH=10;
TInt x=0;
const CFont* myFont=NULL;
myFont=CEikonEnv::Static()->TitleFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels() +1;
gc.DrawText(_L("TitleFont g1DY16"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->NormalFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("NormalFont g1DY16Y27"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->AnnotationFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("AnnotationFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->LegendFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("LegendFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->SymbolFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("SymbolFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
myFont=CEikonEnv::Static()->DenseFont();
gc.UseFont( myFont );
baseH+=myFont->HeightInPixels()+1;
gc.DrawText(_L("DenseFont g1DY16Y2757"),TPoint(x,baseH));
gc.DiscardFont();
}
The following are screenshots of the emulator on the s60 platform of each version.