如何使用 SkiaSharp 测量尾随空格?

How to measure trailing spaces using SkiaSharp?

当文本在前缀或后缀中包含空格时,SkiaSharp 不会考虑空格。它 returns 仅文本宽度并忽略空格。我正在使用以下代码片段来测量字符串。

        SKPaint paint = new SKPaint();
        paint.Typeface = SKTypeface.FromFamilyName("Calibri");
        paint.TextSize = 15;

        SKRect rect = new SKRect();
        paint.MeasureText(" Test ", ref rect);

是否有任何选项可以使用 SkiaSharp 测量带有尾随空格的文本?

您需要使用 MeasureText 的 return 值:

float width = paint.MeasureText(" Test ", ref rect);
float whiteSpaceWidth = width - rect.Width;

如果你想调整 rect 以包含空格:

rect.Left -= whiteSpaceWidth / 2;
rect.Right += whiteSpaceWidth / 2;