描述
SetTextAlign函数设置指定设备上下文的文本对齐标志。
C++ 语法
UINT SetTextAlign( __in HDC hdc, __in UINT fMode ); |
PowerBASIC 语法
FUNCTION SetTextAlign ( _ BYVAL hdc AS DWORD, _ BYVAL fMode AS DWORD _ ) AS DWORD |
参数
hdc
[in]处理设备上下文。
fMode
[in]通过使用以下列表中的值的掩码来指定文本对齐。只有一个标志可以从影响水平和垂直对齐的那些标志中选出。另外,只能改变当前位置的两个标志之一。
值 |
含义 |
TA_BASELINE |
参考点在文本的基线上。 |
TA_BOTTOM |
参考点位于边界矩形的下边缘。 |
TA_TOP |
参考点位于边界矩形的顶边。 |
TA_CENTER |
参考点与边界矩形的中心水平对齐。 |
TA_LEFT |
参考点位于边界矩形的左边缘。 |
TA_RIGHT |
参考点位于边界矩形的右边缘。 |
TA_RTLREADING |
中东语言版Windows:文本从右到左阅读顺序布局,而不是默认的从左到右的顺序。这仅适用于在设备上下文中选择的字体为希伯来语或阿拉伯语。 |
TA_NOUPDATECP |
每次文本输出调用后,当前位置都不会被更新。 |
TA_UPDATECP |
每个文本输出调用后,当前位置都会被更新。 |
当前字体具有垂直默认基线,与汉字一样,必须使用以下值而不是TA_BASELINE和TA_CENTER。
值 |
含义 |
VTA_BASELINE |
参考点在文本的基线上。 |
VTA_CENTER |
参考点与边界矩形的中心垂直对齐。 |
默认值为TA_LEFT,TA_TOP和TA_NOUPDATECP。
返回值
如果函数成功,返回值就是以前的文本对齐设置。
如果函数失败,返回值为GDI_ERROR。
备注
TextOut和ExtTextOut功能使用文本对齐标志将文本字符串放置在显示器或其他设备上。标志指定参考点和界定文本的矩形之间的关系。参考点是当前位置或传递给文本输出功能的点。
界定文本的矩形由文本字符串中的字符单元形成。
获得左对齐文本的最佳方式是使用
SetTextAlign (hdc, GetTextAlign(hdc) & (~TA_CENTER))
SetTextAlign (hdc, GetTextAlign(hdc) AND (NOT %TA_CENTER))
or
SetTextAlign (hdc, TA_LEFT | <other flags>)
SetTextAlign (hdc, %TA_LEFT OR <other flags>)
您也可以为此目的使用SetTextAlign(hdc,TA_LEFT),但这会丢失任何垂直或从右到左的设置。
注意当您使用ScriptStringOut时,不应使用SetTextAlignTA_UPDATECP,因为未正确显示所选文字。如果您必须使用此标志,您可以根据需要取消设置并重设,以避免出现此问题。
引用文件 #INCLUDE Once
WinGdi.inc(包括Windows.inc)