Windows API 函数学习(8)---处理文本和字体

一、显示文本

int DrawText(HDC hdc,LPCTSTR lpString,int nCount,LPRECT lpRect,UINT uFormat);//该函数在由lpRect参数指定的矩形中显示格式化的文本,可以调整左对齐、右对齐以及居中显示。

BOOL TextOut(HDC hdc,int nXStart,int nYStart,LPCTSTR lpString,int cbString);//该函数用当前DC中选择的字体在指定的DC上显示字符串,参考点(nXStart,nYStart)的信息依赖于SetTextAlign设置的方式。

BOOL GrayString(HDC hdc,HBRUSH hBrush,GRAYSTRINGPROC lpOutputProc,LPARAM lpData,int nCount,int X,int Y,int nWidth,int nHeight);//该函数在给定位置绘出灰色文本,方法是先在内存位图中写出文本,再将位图变灰,然后将位图拷贝到显示器。此函数在变灰文本时忽略选定的刷子和北京。

二、设置和获取文本属性

UINT SetTextAlign(HDC hdc,UINT fMode);//设置DC的正文对齐标志。

UINT GetTextAlign(HDC hdc)://获得DC中文本对齐标志

COLORREF SetTextColor(HDC hdc,COLORREF crColor);//为指定的设备描述表中的文本设置给定的颜色

COLORREF GetTextColor(HDC hdc);//获取DC中当前文本颜色

int SetTextCharacterExtra(HDC hdc,int nCharExtra);//设置字符间的间隔值

DWORD GetKerningPairs(HDC hdc,DWORD nNumPairs,LPKERNINGPAIR lpkrnpair);//函数获取DC中当前字体设定的字符对序列,当这些字符对出现时,系统应作出特别处理,一般是缩小他们的间隔。

 BOOL GetTextExtentPoint32(HDC hdc,LPCTSTR lpString,int cbString,LPSIZE lpSize);//函数计算由参数指向的文本行的宽度和高度

DWORD GetCharacterPlacement(HDC hdc,LPCTSTR lpString,int nCount,int nMaxExtent,LPGCP_RESULTS lpResults,DWORD dwFlags);//函数可以获取一个文本串的所有信息,如字符宽度,插字符位置,串内字符顺序等

int EnumFontFamiliesEx(HDC hdc,LPLOGFONT lpLogFonr,FONTENUMPROC lpEnumFontFamExProc,LPARAM lParam.DWORD dwFlags);//函数遍历系统中所有符合lpLogFont指定的字体特性的字体。

int CALLBACK EnumFontFamExProc(ENUMLOGFONTEX *lpelfe,NEWTEXTMETRICEX *lpntme,int FontType,LPARAM lParam);//回调函数。如果函数返回非零值,则EnumFontFamiliesEx函数将继续遍历,如果返回零值,则将停止遍历

posted @ 2007-04-02 14:38  巨巨  阅读(297)  评论(0编辑  收藏  举报