SKIA ::获取画布内文本的文本高度

时间:2013-07-03 09:58:35

标签: c++ skia

我正在使用Skia进行我的一个示例程序。我有一个画布,在里面我用font_size 30编写文本,这是代码片段。

string  = "Test String";
SkString text(string);
SkPaint paint;
SkScalar textWidth;
paint.setTextSize(SkIntToScalar(font_size));
paint.getFontMetrics(&metrics);
textWidth = paint.measureText(text.c_str(), text.size());

textWidth将给出画布内文本的确切宽度。我的问题是如何才能获得文本的高度?请帮忙。

2 个答案:

答案 0 :(得分:2)

过去我曾经不得不自己调查一下这个问题,this link here应该对你有所帮助,即使它是java,据我所知,字体的所有工作都是相同的。

我假设您需要从上升到基线,这只是上升。或者你可能希望整个事物从上到下,即上升和下降相结合,

如果你在横格纸上书写,基线与你写的线相同,上面的任何东西都是上升,下面的任何东西都是下降。

我对skia一无所知,但快速浏览一下skia,this link here,在FontMetrics中有一个名为fAscent的公共成员,fDescent,也许你可以使用它们。

答案 1 :(得分:0)

您指定的字体大小" font_size"是单行文本的高度