GetCharacterPlacement
VB声明
Declare Function GetCharacterPlacement Lib "gdi32" Alias " GetCharacterPlacementA" (ByVal hdc As Long, ByVal lpsz As String, ByVal n1 As Long, ByVal n2 As Long, lpGcpResults As GCP_RESULTS, ByVal dw As Long) As Long
说明
该函数用于了解如何用一个给定的字符显示一个字串
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
参数表
参数 类型及说明
hdc Long,设备场景的句柄
lpsz String,欲分析的字串
n1 Long,字串的长度
n2 Long,若在dw参数中指定了GCP_MAXEXTENT常数,那么一旦显示的字串超出了由该参数指定的宽度(用逻辑单位),函数就会停止处理字串
lpGcpResults GCP_RESULTS,在这个结构中装载为这个字串计算出来的信息
dw Long,下述常数的一个或多个:
GCP_CLASSIN lpGcpResults结构中的lpClass数组包含了字串中各字符的分类信息
GCP_DIACRITIC 在计算时将发音符和“废”字符考虑在内
GCP_DISPLAYZWG 显示某些字符集中使用的不可见字符,根据它们在一个词中的位置修改字符
GCP_GLPYPHSHAPE 允许对字样(字面)进行特殊处理。根据GetFontLanguageInfo函数的结果使用
GCP_JUSTIFY 调整字样位置,对字串进行对齐处理,使其与n2参数指定的范围相符
GCP_JUSTIFYIN lpGcpResults结构中的lpDX参数包含了计算过程中使用的对齐粗细设置
GCP_LIGATE 如当前字体支持,就用连字技术将字符合并成单独一个字符
GCP_MAXEXTENT 请参考对n2参数的说明
GCP_USERKERNING 计算字符位置时,使用字距表(如果有的话)可用其他标志对希伯来和阿拉伯字体进行特殊处理。这类语言按照从右到左的顺序显示文字,而且具体显示的字样由字符在一个词中的位置决定

Top