StyledText 元素以各种样式和交互属性渲染文本,例如粗体、下划线和彩色部分以及 HTTP 链接。它基于 commonmark 规范的一个子集。
slint
export component Example inherits Window { in property <string> value: 55; width: 200px; height: 200px; StyledText { text: @markdown("This is a piece of <u>Styled Text</u>\n" "with a red value inserted:" "<font color=\"red\">\{value}</font>"); }}
功能
Styled Text 支持以下功能:
| 功能 | 方法 |
|---|---|
| 斜体 | 内置 |
| 删除线 | 内置 |
| 行内代码 | 内置 |
| 链接 | 内置 |
| 有序和无序列表 | 内置 |
| 下划线 | <u> HTML 标签 |
| 文本颜色 | <font color="..."> HTML 标签 |
当前不支持
| 功能 |
|---|
| 标题 |
| 图像 |
| 表格 |
| 块引用 |
| 下标 |
| 上标 |
| 水平分隔线 |
| 脚注 |
| 数学表达式 |
| 其他 HTML 标签 |
属性
default-color
brush default: <depends on theme>
文本的默认颜色,当未通过标记指定颜色时使用。
default-font-family
string default: ""
用于渲染文本的默认字体族,当未通过标记指定字体时使用。如果留空,则回退到所在 Window 的 default-font-family。
default-font-size
length default: 0px
用于渲染文本的默认字号,当未通过标记指定大小时使用。如果未设置(或为零),则回退到所在 Window 的 default-font-size。
horizontal-alignment
enum TextHorizontalAlignment default: the first enum value
文本的水平对齐方式。
TextHorizontalAlignment
此枚举描述 Text 或 StyledText 元素沿水平轴的对齐方式。
start:文本将与包含盒的起始边对齐。根据文本方向,可能是左对齐或右对齐。end:文本将与包含盒的结束边对齐。根据文本方向,可能是左对齐或右对齐。left:文本将与包含盒的左边缘对齐。center:文本将在包含盒内水平居中。right:文本将与包含盒的右边缘对齐。
link-color
color default: #00f
用于渲染文本中链接的颜色。
text
styled-text default: ""
要渲染的样式文本,使用 CommonMark 标记以及用于样式的其他 HTML 标签。
vertical-alignment
enum TextVerticalAlignment default: the first enum value
文本的垂直对齐方式。
TextVerticalAlignment
此枚举描述 Text 或 StyledText 元素沿垂直轴的对齐方式。
top:文本将与包含盒的顶部对齐。center:文本将在包含盒内垂直居中。bottom:文本将与包含盒的底部对齐。
回调
link-clicked(link: string)
当文本中的链接被点击时调用的回调。参数包含被点击的链接字符串。