SetTextJustification

VB声明
Declare Function SetTextJustification Lib "gdi32" Alias "SetTextJustification" (ByVal hdc As Long, ByVal nBreakExtra As Long, ByVal nBreakCount As Long) As Long
说明
通过指定一个文本行应占据的额外空间，可用这个函数对文本进行两端对齐处理
返回值
Long，非零表示成功，零表示失败。会设置GetLastError
参数表
参数 | 类型及说明
hdc | Long，设备场景的句柄
nBreakExtra | Long，描绘时欲添加到字串的额外空间大小
nBreakCount | Long，用于分散额外空间的分隔字符的数量
在VB里使用
如使用了这个函数，要确定针对VB窗体或控件清除错误条件
注解
额外空间由行内各个分隔字符分摊。这里的“分隔字符”是由特定的字体定义的，通常都是空格字符。可用GetTextMetrics函数了解一种字体采用的分隔字符是什么。对文本进行两端对齐排列的时候，通常需要采取的操作步骤如下： 1、用GetTextExtentPoint32这个API函数计算字串占据的显示范围 2、决定为了使一个行两端对齐，需要加入多少额外的空间（采用逻辑坐标）。这个空间（或距离）通常等于右页边距减去文本的水平“范围” 3、计算一行文本中采用多少个间隔字符（通常是空格） 4、将额外空间以及间隔字符的数量作为参数，调用SetTextJustification函数 5、调用文本绘图（显示）函数 这个函数在内部维持着一种错误条件，用于纠正对齐过程中出现的误差。这样一来，我们就可以区分出行内不同部分间的额外间距（如行内使用了多种字体）。具体的方法是将行分割成几个段，然后为每一段都调用这个函数。对于一个新行，必须清除这个错误条件，方法是向nBreakExtra和nBreakCount参数传递零值，然后调用这个函数

Top