LaTeX 元素使用 LaTeX 语法渲染数学公式和表达式。它支持基于框架的内容切换,并具有可配置的过渡效果。
LaTeX 元素共享来自 基本元素 和 视图元素 的公共字段。
| 属性 | 类型 | 必需 | 示例 | 值范围 | 描述 |
|---|---|---|---|---|---|
| type | string | true | - | LaTeX | 元素的类型。对于 LaTeX 元素,这始终是 "LaTeX"。 |
| frames | array | true | - | - | 一个 LaTeX 框架的数组。每个框架定义一个在特定时间范围内显示的 LaTeX 表达式。 |
| displayMode | boolean | false | - | - | 是否以显示模式(块级,居中)或行内模式渲染。 |
| detail | number | false | - | - | 渲染细节级别。更高的值产生更平滑的曲线。 |
| targetWidth | number | false | - | - | 渲染的 LaTeX 内容的目标宽度,以像素为单位。 |
| color | string | false | - | - | 渲染的 LaTeX 文本的颜色,以十六进制格式表示。 |
frames 数组中的每个项目定义一个 LaTeX 表达式及其显示的时间范围:
| 属性 | 类型 | 必需 | 示例 | 值范围 | 描述 |
|---|---|---|---|---|---|
| latex | string | true | E = mc^2 | - | 要渲染的 LaTeX 表达式字符串。 |
| start | number | true | - | >= 0 | 此帧相对于元素的开始时间,以秒为单位。 |
| end | number | true | - | > start | 此帧相对于元素的结束时间,以秒为单位。必须大于开始时间。 |
| transition | object | false | - | - | 切换到此帧时的过渡效果。 |
| style | object | false | - | - | 每帧的样式覆盖,包括颜色、displayMode 和 targetWidth。 |
过渡对象:
type (字符串) - 过渡类型:'fade'、'instant' 或 'morph'。默认值:'instant'duration (数字) - 过渡持续时间(以秒为单位)。默认值:0.5样式对象(每帧覆盖):
color (字符串) - 覆盖此帧的元素级颜色displayMode (布尔值) - 覆盖此帧的显示模式targetWidth (数字) - 覆盖此帧的目标宽度
{
"id": "latex-001",
"type": "LaTeX",
"start": 0,
"duration": 5,
"trackIndex": 0,
"x": 200,
"y": 300,
"width": 400,
"height": 100,
"anchorX": 200,
"anchorY": 50,
"rotation": 0,
"scaleX": 1,
"scaleY": 1,
"alpha": 1,
"color": "#000000",
"displayMode": true,
"targetWidth": 400,
"frames": [
{
"latex": "E = mc^2",
"start": 0,
"end": 5
}
]
}
{
"id": "latex-002",
"type": "LaTeX",
"start": 0,
"duration": 10,
"trackIndex": 0,
"x": 200,
"y": 300,
"width": 500,
"height": 120,
"anchorX": 250,
"anchorY": 60,
"rotation": 0,
"scaleX": 1,
"scaleY": 1,
"alpha": 1,
"color": "#1a1a1a",
"displayMode": true,
"targetWidth": 500,
"frames": [
{
"latex": "f(x) = ax^2 + bx + c",
"start": 0,
"end": 5,
"transition": {
"type": "fade",
"duration": 0.5
}
},
{
"latex": "x = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}",
"start": 5,
"end": 10,
"transition": {
"type": "morph",
"duration": 0.8
}
}
]
}
frames 数组必须至少包含一个具有有效 latex 字符串的帧。start 到 end)应覆盖元素的持续时间,以实现连续显示。morph 过渡在两个 LaTeX 表达式之间创建平滑动画。