getTextLayerBounds method

Rect getTextLayerBounds(
  1. TextLayerData layer,
  2. Size canvasSize
)

获取文本图层的边界框

Implementation

Rect getTextLayerBounds(TextLayerData layer, Size canvasSize) {
  final paragraph = _buildParagraph(layer);
  paragraph.layout(ui.ParagraphConstraints(width: canvasSize.width));

  // 获取文本的“内在”尺寸,而不是布局容器的尺寸。
  final double intrinsicWidth = paragraph.maxIntrinsicWidth;

  // 增加一些触摸区域,方便用户点击
  const padding = 2.0;
  return Rect.fromCenter(
    center: layer.position,
    width: intrinsicWidth + padding,
    height: paragraph.height + padding,
  );
}