工控编程吧
标题:
134上位机VC MFC输出空心文字两种方法
[打印本页]
作者:
qq263946146
时间:
2015-12-29 22:13
标题:
134上位机VC MFC输出空心文字两种方法
(, 下载次数: 0)
上传
点击文件名下载附件
134上位机VC MFC输出空心文字两种方法
功能展示
一般系统输出都是实心文字,要输出空心字体,我们在代码上就得实现这一功能,我们当前例程通过两种方法实现输出文字为空心的效果,点击按钮一实现方法一,点击按钮二,实现第二种方法,效果如图;
要点提示
第一种方法可以通过微软提供的空心字体实现,即华文彩云,此字体可以从网络下载或使用本例程打包的,解压后的文件华文彩云.ttf复制到系统目录C:\Windows\Fonts(WIN7系统,其他系统类似)下才能够使用;
第二种方法是通过窗口的设备上下文CDC类的通道方法实现,也就是在BeginPath()与EndPath()之间输出文字,才调用StrokePath()函数实现字体的空心效果;
实现功能
1.新建基于对话框的应用程序
2.拖拽两个按钮,分别关联两个函数,实现两种方法输出空心文字;
void CGkbc8Dlg::OnButton1()
{
CPen pen(PS_SOLID,1,RGB(255,0,0));
CFont font;
font.CreateFont(-32,-28,0,0,600,0,0,0,
DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_ROMAN,"宋体");
CDC* pDC = GetDC();
pDC->SetBkMode(TRANSPARENT);
pDC->SelectObject(&font);
pDC->SelectObject(&pen);
pDC->BeginPath();
pDC->TextOut(0,100,"空心字体的实现");
pDC->EndPath();
pDC->StrokePath();//实现空心
font.Detach();
}
复制代码
void CGkbc8Dlg::OnButton2()
{
CPen pen(PS_SOLID,1,RGB(255,0,0));
CFont font;
font.CreateFont(-32,-28,0,0,400,0,0,0,
DEFAULT_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_ROMAN,
"华文彩云");//华文彩云字体自带空心效果
CDC* pDC = GetDC();
pDC->SetBkMode(TRANSPARENT);
pDC->SelectObject(&font);
pDC->SelectObject(&pen);
pDC->TextOut(0,150,"空心字体的实现");
font.Detach();
}
复制代码
我们来演示下功能实现的整个过程
[iqiyi]http://player.video.qiyi.com/f747c4ee5d55d1cf04af8734bb3f1251/0/0/w_19rtcwistp.swf-albumId=5107787009-tvId=5107787009-isPurchase=0-cnId=12[/iqiyi]
(, 下载次数: 0)
上传
点击文件名下载附件
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4