CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

如何把windows的字体输出到一个位图?

楼主xrxrxr(懒虫)2001-03-25 08:59:00 在 VC/MFC / 基础类 提问

———— 问题点数:47、回复次数:2Top

1 楼joke100(咱们去SLEEP吧...)回复于 2001-03-25 11:28:00 得分 47

在有该位图的内存DC上TEXTOUT,然后使用BitBlt传送到目标DC。。。  
   
  CDC*   pDC   =   pWnd->GetDC();     //   将带文字的位图显示在这个DC上  
  CDC   MemDC;  
  dcMemory.CreateCompatibleDC(pDC);   //   创建内存DC  
   
  CBitmap   bmp;  
  bmp.LoadBitmap(IDB_BITMAP1);             //   载入你的位图  
  BITMAP   bmpInfo;  
  bmp.GetBitmap(&bmpInfo);  
   
  CBitmap*   pOldBitmap   =   dcMemory.SelectObject(&bmp);   //   将位图选入内存DC  
  int   x   =   0;  
  int   y   =   0;  
  CString   str   =   _T("嘿嘿");  
  dcMemory.TextOut(x,   y,   str);       //   在内存DC上输出文字,此时内存中已有位图存在了  
  pDC->BitBlt(nX,   nY,   bmpInfo.bmWidth,   bmpInfo.bmHeight,   &dcMemory,    
                    0,   0,   SRCCOPY);         //   将内存DC中的改造后的位图传送到本DC  
  dcMemory.SelectObject(pOldBitmap);  
   
  ...  
   
   
         
   
   
  Top

2 楼happylaodu(青菜豆腐)回复于 2001-03-25 11:30:00 得分 0

1.   字体的设定:  
  LOGFONT   logfont;    
   
  lstrcpy((LPSTR)logfont.lfFaceName,(LPSTR)"楷体_GB2312");  
  logfont.lfWeight=700;  
  logfont.lfWidth=20;  
  logfont.lfHeight=50;  
  logfont.lfEscapement=0;  
  logfont.lfUnderline=FALSE;  
  logfont.lfItalic=FALSE;  
  logfont.lfStrikeOut=FALSE;  
  logfont.lfCharSet=GB2312_CHARSET;  
   
  CFont   myFont;  
  myFont.CreateFontIndirect(&logfont);  
  HFONT   hFont=myFont;     //不一定要。  
  //或用     HFONT   hFont=CreateFontIndirect(&logfont);  
   
  2.   画到图上:  
  pDC->StretchBlt(m_pt.x,m_pt.y,m_size.cx,m_size.cy,&m_dcMem,0,0,m_bmInfo.bmWidth-1,  
  m_bmInfo.bmHeight-1,SRCCOPY);     //位图画出来  
  HFONT   hOldFont=(HFONT__   *)pDC->SelectObject(hFont);    
  //字体要事先设好,当作成员变量。  
  int   oldMode=pDC->SetBkMode(TRANSPARENT);  
  pDC->TextOut(50,20,"sample");  
  pDC->SetBkMode(oldMode);  
  Top

相关问题

  • 急!急!急!在bmp图象上输出字体的问题
  • 图标下面的字体输出?当文字较多时可不可以自动换行输出?
  • 输出文字字体的问题
  • 有点难度:ASP能调用非常规字体,如粗圆字体,再输出图片,甚至是矢量格式吗?
  • TextOut输出文本时,如何使字体背景为透明
  • 如何改变pDC->TextOut()输出字体的大小?
  • 在VC中怎么改变输出字体的大小
  • 如何设定<%="hello word!%>输出的字体及颜色?
  • 请问有没有一个字体输出的函数?
  • 请问如何设置输出文本的字体?

关键词

  • 字体
  • 内存
  • dc
  • logfont
  • hfont
  • dcmemory
  • pdc
  • bmpinfo
  • myfont
  • 图

得分解答快速导航

  • 帖主:xrxrxr
  • joke100

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo