GetCharacterPlacement

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