如何可以把输出的W,T这样字体宽度不相等的,通过设置可以输出相等的。
dc.TextOut(0,0,“WT”);

解决方案 »

  1.   

    CLogFont font;
    font.width=20;
    ...
    dc.SelectObject(CFont)
    dc.textOut(..)
      

  2.   

    CLogFont   是一个什么类,我在msdn上没有找到
      

  3.   

    ljyjjj(龙睛鱼) 中CLogFont 是LogFont .
    这种方法字体本身并没有等宽,只是用空白填补.
      

  4.   

    CFont hFont ;
    hFont.CreateFont(20, 0, 0, 0, FW_BOLD, FALSE, FALSE,0,0,0,0,0,0, "Vineta BT"); 
    dc.SelectObject(&hFont);
      

  5.   

    void CIntroDlg::SetTextFont(CDC* pDC , UINT size, COLORREF color, int weight , LPSTR FontType)
    {
    LOGFONT lf;
    memset(&lf, 0, sizeof(LOGFONT));     
    lf.lfHeight = size;
    lf.lfWeight = weight;
    strcpy(lf.lfFaceName, FontType);//"Times New Roman"
    CFont* pFont = new CFont ;
    pFont->CreateFontIndirect(&lf);
    pDC->SelectObject(pFont);
    pDC->SetTextColor(color) ;
    delete pFont ;
    }
      

  6.   

    yuliangpei(踏雪无痕) 
    说的好错误阿;Courier New之类的字体都是等宽的。
    所以,我认为crystal521(水晶泪) 正解