RichText(
text: TextSpan(
children: [
WidgetSpan(
child: Transform.translate(
offset: Offset(0.0, -7.0),
child: RichText( // use RichText instead ot Text if you need recognizer on a superscripted text
text: TextSpan(
text: "superscripted text",
//style: textStyle,
recognizer: tapGestureRecognizer,
),
)
),
),
],
),
);
7条答案
按热度按时间yftpprvb1#
你必须使用Unicode。下面是从this answer得到的Unicode:
对于剪切和粘贴目的(从here开始):
wsxa1bj12#
你可以在WidgetSpan中使用offset属性。我用下面的代码来显示飞行交叉。偏移dx和dy值可帮助您根据需要设置上标或下标。
pepwfjgg3#
https://medium.com/flutter-community/font-features-in-flutter-320222fc171d
我找到了这个但我试过了我的代码不管用。但也许这能帮到你
zaqlnxep4#
像这样使用RichText Widget
oug3syen5#
尝试了以前的答案,但我有一些问题的字体。这对我很有效。
ztyzrc3y6#
或者,如果你想在上标文本上使用recognizer,那么你应该使用类似的东西:
重要:如果需要识别上标文本,请使用RichText而不是内部块中的Text。
(更好的版本可以在TextStyle中使用fontFeatures,但它没有在我的解决方案中提升文本,所以它对我来说不起作用。
)
uqcuzwp87#
下标和上标通常分别用于设置正文基线以下或以上较小字符的文本格式。
https://medium.com/@anna_muzykina/superscript-and-subscript-text-in-flutter-2d4f76ef18d3