如何使用TextPainter绘制文本?

CustomPainter绘制方法的文档说:“要在上绘制文本Canvas,请使用TextPainter”。因此,在我MyCustomPainter的paint方法中,我具有以下内容:

TextSpan span = new TextSpan(text: 'Yrfc');

TextPainter tp = new TextPainter(text: span, textAlign: TextAlign.left);

tp.layout();

tp.paint(canvas, new Offset(5.0, 5.0));

我尝试了各种偏移量,(Offset.zero, Offset.infinite, new Offset(10.0,

10.0)但始终看不到屏幕上绘制的文字。

回答:

我在输入此问题时找到了答案,但是我已经花了一段时间了,因此发布以防万一。

解决问题的方法是将TextSpan行更改为:

TextSpan span = new TextSpan(style: new TextStyle(color: Colors.grey[600]),

text: 'Yrfc');

显然是因为我没有明确选择颜色,所以要么是无形地绘制文本,要么是白色(背景)颜色。

以上是 如何使用TextPainter绘制文本? 的全部内容, 来源链接: utcz.com/qa/433379.html

回到顶部