CDC::SetTextJustification
int SetTextJustification(int nBreakExtra,int nBreakCount);
返回值:如果成功,则返回非零值,否则为0。
参数:
nBreakExtra
指定加在一行文本的额外间隔总量(逻辑单位)。如果当前映射模式不是MM_TEXT ,则该参数的指定值将转换为当前映射模式下的取值,并与最邻近的设备单位靠近。
nBreakCount
指定在线断开字符串数。
说明:
添加间隔以断开字符串中的字符。应用可以使用GetTextMetrics成员函数来获取字体的中断字符。调用SetTextJustification成员函数后,使用文本输出函数(如TextOut)根据指定的中断符数目平均分配额外空间。中断符通常是空格符(ASCII32),但字符也可定义其它字符。GetTextExtent通常与SetTextJustification一起使用。GetTextExtent在给定对齐方式前计算行的宽度。应用通过减去GetTextExtent在对齐操作之后返回的字符串宽度,从而能够决定在nBreakExtra中指定的间隔量。SetTextJustification函数可用于包含多种字体的行的对齐。这种情况下,行必须通过对齐方式逐步建立。因为在对齐过程中会出现围绕错误,系统保留了说明当前错误的运行错误。当对齐包含多个运行错误时,GetTextExtent自动使用错误记录,计算下一运行错误。这允许输出函数将错误与新错误组合。在各行实现对齐之后,这个错误必须被清除以防止将错误带入下一行。可在调用SetTextJustification时将nBreakExtra设置为0,从而清除错误记录。
请参阅:
CDC::GetMapMode
,
CDC::GetTextExtent
,
CDC::GetTextMetrics
,
CDC::SetMapMode
,
CDC::TextOut
, ::SetTextJustification