1
如何在Delphi 7中使用GetTextExtentPoint32W在输出之前获取宽字符串的像素宽度和高度?如何获取字符串的像素宽度和高度?
如何在Delphi 7中使用GetTextExtentPoint32W在输出之前获取宽字符串的像素宽度和高度?如何获取字符串的像素宽度和高度?
你可以做
procedure TForm1.FormPaint(Sender: TObject);
var
extent: TSize;
S: WideString;
begin
S := 'This is the integral sign: '#$222b;
if not GetTextExtentPoint32W(Canvas.Handle, PWideChar(S), length(S), extent) then
RaiseLastOSError;
TextOutW(Canvas.Handle, (Width - extent.cx) div 2, (Height - extent.cy) div 2,
PWideChar(S), length(S));
end;
的GetTextExtentPoint32W
将会把宽度和高度extent.cx
和extent.cy
,分别。
最后一行然后将使用TextOutW
在客户区域上绘制水平和垂直居中的字符串。