当前位置: 首页 > news >正文

产品销售网站模板东莞做网站哪家公司好

产品销售网站模板,东莞做网站哪家公司好,长沙官网制作,手机网站建设哪里好D3DX库提供接口ID3DXFont用于在Direct3D应用程序中绘制文本,该接口内部使用GDI(图形设备接口)来绘制文本,因此该接口在性能上略有损失,由于使用GDI所以才能够处理一些复杂的字体和格式。可以用D3DXCreateFontIndirect函数来创建一个ID3DXFont…

D3DX库提供接口ID3DXFont用于在Direct3D应用程序中绘制文本,该接口内部使用GDI(图形设备接口)来绘制文本,因此该接口在性能上略有损失,由于使用GDI所以才能够处理一些复杂的字体和格式。可以用D3DXCreateFontIndirect函数来创建一个ID3DXFont的接口对象。

HRESULT D3DXCreateFontIndirect(LPDIRECT3DDEVICE9       pDevice,CONST D3DXFONT_DESC*	pDesc,LPD3DXFONT*             ppFont
);

一旦获取了ID3DXFont接口的指针,只需要调用方法ID3DXFont::DrawText即可轻而易举地完成文本的绘制。

INT ID3DXFont::DrawText(LPD3DXSPRITE pSprite,LPCSTR pString,INT Count,LPRECT pRect,DWORD Format,D3DCOLOR Color
);Font->DrawText(NULL,"Hello,World",-1,&rect,DT_TOP | DT_LEFT,0xff000000);

pSprite:指定字符串所属的ID3DXSprite对象接口,可设为默认值0或NULL,表示在当前窗口中绘制字符串
pString:指向将要绘制的字符串的指针
Count:字符串中的字符个数,若该值为-1,则认为参数pString指向一个以NULL结尾的字符串,DrawText方法将自动对字符个数进行统计
pRect:指定字符串绘制的矩形区域的位置
Format:指定了字符串在pRect指定的矩形区域中的格式化方法,该参数是一系列可选博阿基的某一个或某种组合
Color:文本颜色

CD3DFont的使用

CD3DFont类绘制文本时使用的是Direct3D而非GDI,所以其绘制的速度比ID3DXFont要快很多,但该类也有缺陷,它不支持ID3DXFont所支持的那些复杂的字体和格式,如果很在意速度而且简单字体能满足要求,CD3DFont类是一个很好的选择。

CD3DFont(const TCHAR* strFontName, DWORD deHeight, DWORD dwFlags = 0L)//实例化一个CD3DFont类的对象后,必须调用如下方法来对字体进行初始化
Font=new CD3DFont("Times New Roman",16,0);
Font->InitDeviceObject(Device);
Font->RestoreDeviceObjects();

StrFontName:一个以NULL结尾的字符串,它指定了字体的名称
dwHeigh:字体的高度
dwFlags:创建标记,该参数可设为0或以下标记的组合,D3DFONT_BOLD、D3DFONT_ITALIC、D3DFONT_ZENABLE

使用DrawText绘制文本
HRESULT CD3DFont::DrawText(FLOAT x,FLOAT y,DWORD dwColor,const TCHAR* strText,DWORD dwFlags = 0)Font->DrawText(20,20,0xff000000,"Hello World");

x:屏幕坐标系中文本绘制的起点的x坐标
y:屏幕坐标系中文本绘制的起点的y坐标
dwColor:文本的颜色
strText:指向所要绘制文本的指针

清理

在删除一个CD3DFont类的对象之前,我们必须首先调用一些清理函数

Font->InvalidateDeviceObjects();
Font->DeleteDeviceObjects();
delete Font;

D3DXCreateText函数

该函数用于创建文本的3D网格,如果调用成功则返回D3D_OK

HRESULT D3DXCreateText(LPDIRECT3DDEVICE9   pDevice,HDC                 hDC,LPCWSTR             pText,FLOAT               Deviation,FLOAT               Extrusion,LPD3DXMESH*         ppMesh,LPD3DXBUFFER*       ppAdjacency,LPGLYPHMETRICSFLOAT pGlyphMetrics
);

pDevice:指向与网格相关的设备
hDC:一个设备环境句柄,它包含了我们将用来创建网格的字体的相关信息
pText:指向确定所要用于生成文本的字符串的指针
Deviation:TrueType字体轮廓的最大弦偏差,该值必须为非负,弦偏差等于原始字体的一个设计单位
Extrusion:沿z轴负方向度量的字体深度
ppMesh:返回所创建的网格
ppAdjacency:返回所创建的网格的邻接信息,如果不需要该值,请指定为NULL
pGlyghMetrics:指向LPGLYPHMETRICSFLOAT类型结构数组的指针,该结构包含了字形和度量数据,如果不关心字形的度量数据,可将该值设为0

HDC hdc = CreateCompatibleDC(0);
HFONT hFont;
HFONT hFontOld;LOGFONT lf;
ZeroMemory(&lf, sizeof(LOGFONT));
lf.lfHeight = 25;
lf.lfWidth = 12;
lf.lfEscapement = 0;
lf.lfOrientation = 0;
lf.lfWeight = 500;
lf.lfItalic = false;
lf.lfUnderline = false;
lf.lfStrikeOut = false;
lf.lfCharSet = DEFAULT_CHARSET;
lf.lfOutPrecision = 0;
lf.lfClipPrecision = 0;
lf.lfQuality = 0;
lf.lfPitchAndFamily = 0;
wcscpy(lf.lfFaceName, L"Time New Roman");hFont = CreateFontIndirect(&lf);
hFontOld = (HFONT)SelectObject(hdc, hFont);D3DXCreateText(Device, hdc, L"Direct3D", 0.001f, 0.4f, &Text, 0, 0);SelectObject(hdc, hFontOld);
DeleteObject(hFont);
DeleteDC(hdc);TEXT->DrawSubset(0);
http://www.yidumall.com/news/70825.html

相关文章:

  • 如何架设网站服务器电商运营工资一般多少钱一个月
  • 宁波手工活外发加工网seo怎么推排名
  • 岳阳做网站seo网站优化案例
  • 做富集的网站推广公司产品
  • 平顶山网站关键词优化免费网页在线客服制作
  • 温州网站建设小公司seo好seo
  • 成都有哪些网站建设google play下载安装
  • 苏州中车建设工程有限公司网站2345浏览器影视大全
  • 京东网站建设目的网站安全查询系统
  • 微信上浏览自己做的网站吗谷歌外链代发
  • 网站建设销售话术900句bing搜索 国内版
  • 便宜的网站建设黄页引流推广
  • 做视频网站视频品牌网
  • 响应式网站模板免费下载杭州seo排名优化外包
  • 月嫂云商城网站建设怎么申请一个网站
  • 建设银行手机银行网站网站关键词优化方法
  • 网站建设方案案例牡丹江seo
  • 做点心的网站搜索引擎收录提交入口
  • psd模板 转 网站百度一下百度官方网
  • 安平县护栏网站建设百度官网首页登录
  • 网站建设所需的硬件设备百度服务中心
  • 企业名称的英文做网站名营销推广
  • 玄天教学网站建设快手刷粉网站推广
  • 无锡网站制作哪家值得信赖天眼查询个人信息
  • 58同城盐城网站建设小红书推广
  • 最专业的网站建设可以打广告的平台
  • 网页改版广州seo网站开发
  • 做网站能赚吗游戏推广员到底犯不犯法
  • 网站建站策划网站功能开发
  • 什么网站可以做免费广告热点新闻最新消息