BOOL _DC::DrawText(FONTDef pFont, int x, int y, int flag, Rect rcClipRect, std::string* pszText, float fStretchCX, float fStretchCY){ if( !context_ || !pFont ) return FALSE; Font font; LOGFONT lf; font.Attach(pFont); font.GetLogFont(&lf); font.Detach(); lf.lfWidth = (lf.lfWidth * fStretchCX); lf.lfHeight = (lf.lfHeight * fStretchCY); Font fontNew; if( fontNew.CreateFontIndirect(&lf) ){ FONTDef pFontOld = SelectObject(fontNew); ExtTextOut(x, y, flag, rcClipRect, *pszText); SelectObject(pFontOld); fontNew.DeleteObject(); } else{ FONTDef pFontOld = SelectObject(pFont); ExtTextOut(x, y, flag, rcClipRect, *pszText); SelectObject(pFontOld); } return FALSE; }