WinAPI: GetCharWidth 和 GetCharWidth32 - 获取字符宽度

//声明:
GetCharWidth(
  DC: HDC;                   {设备环境句柄}
  FirstChar, LastChar: UINT; {范围内的第一个和最后一个字符值}
  const Widths               {接受每个字符宽度值的整型数组}
): BOOL;

GetCharWidth32(
  DC: HDC;                   {设备环境句柄}
  FirstChar, LastChar: UINT; {范围内的第一个和最后一个字符值}
  const Widths               {接受每个字符宽度值的整型数组}
): BOOL;

{GetCharWidth32 专用于 Win32 系统, 在这里和 GetCharWidth 没有区别}

 
 
 
 
 

 

 
  

//获取当前字体所有大写字母的宽度(用 Memo 显示)
procedure TForm1.FormCreate(Sender: TObject);
var
  arr: array[0..25] of Integer;
  i: Integer;
begin
  GetCharWidth(Canvas.Handle, Ord('A'), Ord('Z'), arr);
  //GetCharWidth32(Canvas.Handle, Ord('A'), Ord('Z'), arr); {也可}
  
  Memo1.Clear;
  for i := 0 to 25 do
  begin
    Memo1.Lines.Add(Char(Ord('A')+i) + #9 + IntToStr(arr[i]));
  end;
end;

 
 
 
 
 

 

 
  

//效果图:
WinAPI: GetCharWidth 和 GetCharWidth32 - 获取字符宽度

你可能感兴趣的:(WinAPI: GetCharWidth 和 GetCharWidth32 - 获取字符宽度)