读书人

如果DRAW的文字显示函数是这样的那么

发布时间: 2013-07-16 22:38:05 作者: rapoo

如果DRAW的文字显示函数是这样的,那么d3d应该怎么写。
本帖最后由 nabasasun 于 2013-07-07 13:30:42 编辑


//文字显示
void PrintText(LPDIRECTDRAWSURFACE Surf,int x,int y,char *Text,DWORD color=RGB(0,0,0), DWORD BK=TRANSPARENT, DWORD BkColor=RGB(255,255,255),int WIDTH=50)
{
HDC hdc;
int ChrLen;
char Tmp[100];

if( Text=="" ) return;

Surf->GetDC(&hdc);
SetBkMode(hdc, BK);
SetBkColor(hdc, BkColor);
SetTextColor(hdc, color);

SelectObject(hdc,Font);

ChrLen=strlen(Text)+1;
for(int i=0; i<=ChrLen/WIDTH; i++ )
{
memset(Tmp,0,100);
for(int j=0; j<((i==ChrLen/WIDTH)?ChrLen%WIDTH:WIDTH); j++)
{
Tmp[j]=*Text;
Text++;
}
TextOut(hdc, x, y, Tmp, strlen(Tmp));
y+=20;
}

Surf->ReleaseDC(hdc);
}


[解决办法]
看这里。
[解决办法]
引用:
Quote: 引用:

看这里。


你这里也和1楼不一样,我是想封成一个函数来使用字体

封装成函数?应该封装成一个类吧。
当然,封装成函数也是可行的。

读书人网 >网络游戏

热点推荐