首页 > 其他分享 >MFC-TextOut绘制文本

MFC-TextOut绘制文本

时间:2023-04-26 21:13:21浏览次数:32  
标签:lf HFONT MFC int DC ch hdc TextOut 文本

 

    
    HDC hdc = ::GetDC(m_hWnd);
    LOGFONT lf = { 0 };
    lf.lfWeight = 16; //平均宽度
    lf.lfHeight = 40;//字体高度
    lf.lfCharSet = GB2312_CHARSET;//字符集
    lstrcpy(lf.lfFaceName, _T("宋体"));
    HFONT hfont = ::CreateFontIndirect(&lf);//创建逻辑字体
    HFONT holdfont = (HFONT)SelectObject(hdc, hfont);

    COLORREF oldcolor=GetTextColor(hdc);//获取DC中的文本颜色
            
    COLORREF color1= SetTextColor(hdc, RGB(0,0,255));//设置指定DC中的文字颜色
    
    int i=SetBkMode(hdc,TRANSPARENT);//设置指定DC的背景混合模式
    
    RECT rect = { 50,50,400,400 };
    
    TCHAR ch[] = _T("GDI练习");

    BOOL b=TextOut(hdc,100,100,ch, _tcslen(ch));//绘制文本
    /*
    参数1:HDC hdc
    参数2:int nXStart   字符串的开始位置 x坐标
    参数3:int nYStart   字符串的开始位置 y坐标
    参数4:LPCTSTR lpString     字符串
    参数5:int cbString        字符串中字符的个数
    返回值:如果函数调用成功,返回值为非零值。
            如果函数调用失败,返回值为0
    
    */


    SetTextColor(hdc, color1);//还原
    SelectObject(hdc, holdfont);
    DeleteObject(hfont);

 

 

 

 

标签:lf,HFONT,MFC,int,DC,ch,hdc,TextOut,文本
From: https://www.cnblogs.com/liming19680104/p/17357353.html

相关文章

  • 我要提取text4文本中的邮箱号 正则应该怎么写?
    大家好,我是皮皮。一、前言前几天在Python白银交流群【膨胀西瓜汁】问了一个Python正则表达式的问题,这里拿出来给大家分享下。代码如下:二、实现过程这里【甯同学】给了一个思路,如下图所示:直接使用字符串+列表推导式搞定了,太强了!不过粉丝正好在学习正则表达式,所以还是希望......
  • # yyds干货盘点 # 我要提取text4文本中的邮箱号 正则应该怎么写?
    大家好,我是皮皮。一、前言前几天在Python白银交流群【膨胀西瓜汁】问了一个Python正则表达式的问题,这里拿出来给大家分享下。代码如下:二、实现过程这里【甯同学】给了一个思路,如下图所示:直接使用字符串+列表推导式搞定了,太强了!不过粉丝正好在学习正则表达式,所以还是希望能够用正则......
  • (转载)MFC下一个类调用另一个类中变量的解决方法
    https://blog.csdn.net/xiaqunfeng123/article/details/39207517/ 假如有类A,类B两个类。如果想在B中调用A的成员函数,该怎么办呢?方法一:在类B的cpp文件中包含A类的头文件,然后在B的需要调用A的函数的函数中,添加#include"A.h"B::funcB(){Aa;a.funcA();}由于类A的funcA不是静态(st......
  • MFC-GetBkMode获取指定DC的背景混合模式
     HDChdc=::GetDC(m_hWnd);LOGFONTlf={0};lf.lfWeight=16;//平均宽度lf.lfHeight=40;//字体高度lf.lfCharSet=GB2312_CHARSET;//字符集lstrcpy(lf.lfFaceName,_T("宋体"));HFONThfont=::CreateFontIndirect(&lf)......
  • MFC-SetBkMode设置指定DC的背景混合模式
     HDChdc=::GetDC(m_hWnd);LOGFONTlf={0};lf.lfWeight=16;//平均宽度lf.lfHeight=40;//字体高度lf.lfCharSet=GB2312_CHARSET;//字符集lstrcpy(lf.lfFaceName,_T("宋体"));HFONThfont=::CreateFontIndirect(&lf)......
  • MFC-SetTextColor设置指定DC中的文字颜色
     HDChdc=::GetDC(m_hWnd);LOGFONTlf={0};lf.lfWeight=16;//平均宽度lf.lfHeight=40;//字体高度lf.lfCharSet=GB2312_CHARSET;//字符集lstrcpy(lf.lfFaceName,_T("宋体"));HFONThfont=::CreateFontIndirect(&lf);//创建......
  • 快速上手Linux核心命令(六):Linux的文本编辑器vi和vim
    @目录前言简介小试牛刀vi/vim工作原理及三种模式常用快捷键命令行图解前言上一篇中已经预告,我们这篇主要说Linux中vi/vim编辑器。它是我们使用Linux系统不可缺少的工具,学会了,你就可以在Linux世界里畅通无阻,学废了,常用操作你也会了,也是够用了,O(∩_∩)O简介vi是Linux系统下标......
  • CSS样式更改——文本Content
    上篇文章主要讲述了CSS样式更改中的背景Background,这篇文章我们来谈谈文本Content内容的基础用法1)).首行缩进文本<divstyle='text-indent:2em'></div>可以设置负数也可使用百分数像素2)).文本对齐方式<divstyle='text-align:center'></div>left左边right右边cen......
  • MFC-SetWindowPos改变窗口的尺寸,位置和Z序
     HWNDhWnd=::FindWindow(_T("Notepad"),NULL);//获取记事本窗口if(!hWnd){AfxMessageBox(_T("请打开记事本"));ExitProcess(0);}BOOLb=::SetWindowPos(hWnd,HWND_TOP,100,100,500,400,SWP_SHOWWINDOW);//改......
  • pandas筛选出某列中含有特定文本内容的所在行
    1、所在行内容是单一的或者是标量df_fintech=df_text[df_text['业务一级分类']=="金融科技"]2、所在行内容是割裂的先转成str格式再用contains筛选df_fintech=df_text[df_text['业务一级分类'].str.contains("金融科技")]3、筛选出列值属于某个范围内的......