paint method
Call this method whenever the text needs to be repainted.
Center of the arc by default will be in the center rectangle of size
with top left in (0, 0). You can control it with offset
.
Implementation
void paint(Canvas canvas, Size size, {Offset? offset}) {
final effectiveOffset = offset ?? Offset(size.width / 2, size.height / 2);
canvas
..save()
..translate(effectiveOffset.dx, effectiveOffset.dy)
..rotate(_angleWithAlignment);
_drawText(canvas, _angleMultiplier, _heightOffset);
canvas.restore();
}