MFC中能改变TextOut输出的字体的大小吗
4个回答
展开全部
当然可以,过程稍复杂,如下例子:
CDC *pDC;
//这里要将 pDC = 你要写字的那个窗口的DC
CFont newfont;//用来保存新字体
CFont *oldFont;//用来保存旧字体
newfont.CreateFontW(20,
11,
0,
0,
FW_NORMAL,
FALSE,
FALSE,
0,
ANSI_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH|FF_SWISS,
_T("宋体")
);//创建新字体
oldFont=pDC->SelectObject(&newfont);//选择新字体
pDC->SetTextColor(RGB(0,255,0));//设置字体颜色
pDC->TextOutW(10, 10, pDoc->text); //输出
pDC->SelectObject(oldFont);//选择回老字体
newfont.DeleteObject();//删除新字体
CDC *pDC;
//这里要将 pDC = 你要写字的那个窗口的DC
CFont newfont;//用来保存新字体
CFont *oldFont;//用来保存旧字体
newfont.CreateFontW(20,
11,
0,
0,
FW_NORMAL,
FALSE,
FALSE,
0,
ANSI_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH|FF_SWISS,
_T("宋体")
);//创建新字体
oldFont=pDC->SelectObject(&newfont);//选择新字体
pDC->SetTextColor(RGB(0,255,0));//设置字体颜色
pDC->TextOutW(10, 10, pDoc->text); //输出
pDC->SelectObject(oldFont);//选择回老字体
newfont.DeleteObject();//删除新字体
展开全部
我来告诉你标准答案!使用SetBkMode(TRANSPARENT);设为透明的文字背景,然后输出文字,文字后就不会将图覆盖。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
需要首先用CreateFont来建立一个字体对象,然后调用控件的SetFont,就可以了。例子:
1、改静态文体的ID,如:IDC_STATIC1
2、添加一个Edit控件,建立一个关联的控件m_editControl。
1、改静态文体的ID,如:IDC_STATIC1
2、添加一个Edit控件,建立一个关联的控件m_editControl。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-12-31
展开全部
来告诉你标准答案!使用SetBkMode(TRANSPARENT);设为透明的文字背景,然后输出文字,文字后就不会将图覆盖。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询