勇芳软件工作室.汉化:  Fonts and Text > Fonts and Text Functions >

SetTextJustification

Previous pageReturn to chapter overviewNext page

描述

 

SetTextJustification函数指定系统应添加到文本字符串中的中断字符的空间量。当应用程序调用{??989796026}或ExtTextOut功能时,将添加空格。

 

C++ 语法

 

BOOL SetTextJustification(

__in HDC hdc,

__in int nBreakExtra,

__in int nBreakCount

);

 

PowerBASIC 语法

 

FUNCTION SetTextJustification ( _

BYVAL hdc AS DWORD, _

BYVAL nBreakExtra AS LONG, _

BYVAL nBreakCount AS LONG _

) AS LONG

 

参数

 

hdc

 

[in]处理设备上下文。

 

nBreakExtra

 

[in]指定要添加到文本行的逻辑单位的总额外空间。如果当前映射模式不是MM_TEXT,则nBreakExtra参数标识的值将被转换并舍入为最近的像素。

 

nBreakCount

 

[in]指定行中的中断字符数。

 

返回值

 

如果函数成功,返回值不为零。

 

如果函数失败,返回值为零。

 

备注

 

中断字符通常是空格字符(ASCII 32),但它可以由字体定义为某个其他字符。GetTextMetrics函数可用于检索字体的中断字符。

 

TextOut功能将指定的额外空间在行中的中断字符之间均匀分配。

 

GetTextExtentPoint32功能始终与SetTextJustification功能一起使用。有时,GetTextExtentPoint32函数在计算指定行的宽度之前考虑到理由,有时它不会。有关详细信息,请参阅GetTextExtentPoint32.在可以计算适当的nBreakExtra值之前,必须知道此宽度。

 

SetTextJustification可用于证明包含不同字体的多个字符串的行。在这种情况下,每个字符串必须单独对齐。

 

因为在调整期间可能会发生舍入误差,所以系统保留定义当前错误值的正在运行的错误项。当对包含多个运行的行进行调整时,GetTextExtentPoint在计算下一次运行的范围时自动使用此错误项,允许TextOut将错误混合到新的运行中。在每一行都被证明之后,必须清除此错误项,以防止将其纳入下一行。该项可以通过nBreakExtra设置为零来调用SetTextJustification来清除。

 

引用文件 #INCLUDE Once

 

WinGdi.inc(包括Windows.inc)