Flutter 颤振文本小部件中的StrutStyle是什么

Flutter 颤振文本小部件中的StrutStyle是什么,flutter,dart,text-widget,Flutter,Dart,Text Widget,颤振Text小部件中的StrutStyle是什么?我已经读过了,但我很难理解其含义,尤其是高度、前导、和字体大小参数。您可以将StrutStyle视为文本小部件中文本的最小行高。这是一个很好的开始 以下是有助于将其可视化的图像: 左侧的彩色矩形是支柱(尽管实际上支柱没有宽度)。该矩形的高度是最小线高度。这条线不能再短了。但它可以更高 上升是从基线到文本顶部的距离(由字体定义,而不是任何特定标志符号) 体面是从基线到文本底部的距离(由字体定义,而不是任何特定字形) 前导(发音为“ledding

颤振
Text
小部件中的
StrutStyle
是什么?我已经读过了,但我很难理解其含义,尤其是
高度
前导
、和
字体大小
参数。

您可以将
StrutStyle
视为
文本
小部件中文本的最小行高。这是一个很好的开始

以下是有助于将其可视化的图像:

左侧的彩色矩形是支柱(尽管实际上支柱没有宽度)。该矩形的高度是最小线高度。这条线不能再短了。但它可以更高

  • 上升是从基线到文本顶部的距离(由字体定义,而不是任何特定标志符号)
  • 体面是从基线到文本底部的距离(由字体定义,而不是任何特定字形)
  • 前导(发音为“ledding”,如旧排字机在字行之间使用的铅金属)是一行底部和下一行顶部之间的距离。在支柱中,一半导杆放在顶部,一半导杆放在底部。图中显示的是灰色区域
可以使用倍增器更改支柱的垂直尺寸

StrutStyle
类中,
height
参数是上升和下降的乘数。在插图中,高度约为1.7,使得绿色上升和粉色下降的比例大于原始图像中的比例。超前高度倍增器可以单独控制。您可以使用
前导
参数进行设置。不过,我使用了与上升和下降相同的乘数。基线保持不变

const Text(
  'My text',            // use 'My text \nMy text' to see multiple lines
  style: TextStyle(
    fontSize: 10,
    fontFamily: 'Roboto',
  ),
  strutStyle: StrutStyle(
    fontFamily: 'Roboto',
    fontSize: 14,
    height: 1.7,
    leading: 1.7,
  ),
),
其他设置,如
fontFamily
fontSize
仅定义使用高度乘数的字体度量。还请注意,
TextStyle
不必与
StrutStyle
相同

支柱的概念来自TeX

另见