20*20的概念不对,你是从dos下转过来的吧,你的20是什么单位,不会是象素吧。

解决方案 »

  1.   

    void CTestView::OnDraw(CDC* pDC)
    {
    pDC->SetMapMode(MM_TWIPS);
    CFont font;
        font.CreateFont(400, 0, 0, 0, FW_NORMAL, FALSE, FALSE, 0,
    DEFAULT_CHARSET,
    OUT_DEFAULT_PRECIS,
                            CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
                            VARIABLE_PITCH | FF_DONTCARE, "楷体_GB2312");
        CFont* pOldFont = (CFont*) pDC->SelectObject(&font);
    pDC->TextOut(100,-100,"楷体");
    pDC->SelectObject(pOldFont);
    }
      

  2.   

    显示字号20的楷体,这个就可以了。font.CreateFont(400,0,0,0,FW_NORMAL,0,0,0,DEFAULT_CHARSET,0,0,0,0,"楷体_GB2312");