LaTeX Element

Een LaTeX-element rendert wiskundige formules en uitdrukkingen met behulp van LaTeX-syntaxis. Het ondersteunt frame-gebaseerde inhoudswisselingen met configureerbare overgangen.

LaTeX-elementen delen de gemeenschappelijke velden van Basis Element en Bekijk Element.

LaTeX Eigenschappen

EigenschapTypeVereistVoorbeeldWaardenbereikOmschrijving
typestringtrue-LaTeXHet type van het element. Voor LaTeX-elementen is dit altijd "LaTeX".
framesarraytrue--Een array van LaTeX-frames. Elk frame definieert een LaTeX-uitdrukking die op een specifiek tijdsbereik wordt weergegeven.
displayModebooleanfalse--Of het in weergavemodus (blokniveau, gecentreerd) of inline-modus moet worden gerenderd.
detailnumberfalse--Het detailniveau van de rendering. Hogere waarden produceren soepelere krommen.
targetWidthnumberfalse--De doelbreedte voor de gerenderde LaTeX-inhoud, in pixels.
colorstringfalse--De kleur van de gerenderde LaTeX-tekst, in hex-formaat.

Frame Object

Elk item in de frames array definieert een LaTeX-uitdrukking en het tijdsbereik waarin deze wordt weergegeven:

EigenschapTypeVereistVoorbeeldWaardenbereikOmschrijving
latexstringtrueE = mc^2-De LaTeX-uitdrukking string om te renderen.
startnumbertrue->= 0De starttijd van dit frame ten opzichte van het element, in seconden.
endnumbertrue-> startDe eindtijd van dit frame ten opzichte van het element, in seconden. Moet groter zijn dan start.
transitionobjectfalse--Overgangseffect bij het overschakelen naar dit frame.
styleobjectfalse--Per-frame stijl overrides voor kleur, weergaveModus en doelBreedte.

Overgangsobject:

  • type (string) - Overgangstype: 'fade', 'instant', of 'morph'. Standaard: 'instant'
  • duur (nummer) - Duur van de overgang in seconden. Standaard: 0.5

Stijlobject (per-frame overrides):

  • kleur (string) - Override de elementniveau kleur voor dit frame
  • weergaveModus (boolean) - Override de weergavemodus voor dit frame
  • doelBreedte (nummer) - Override de doelbreedte voor dit frame

Voorbeeld

Enkele Frame LaTeX

latexElement.json
 
{
  "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
    }
  ]
}

Meerdere Frames met Overgangen

latexMultiFrame.json
 
{
  "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
      }
    }
  ]
}

Opmerkingen

  • LaTeX-elementen gebruiken vector rendering voor scherpe output op elke schaal.
  • De frames array moet ten minste één frame bevatten met een geldige latex string.
  • Frame tijdsbereiken (start tot end) moeten de duur van het element dekken voor continue weergave.
  • De morph overgang creëert een soepele animatie tussen twee LaTeX-uitdrukkingen.