Elemento LaTeX

Un elemento LaTeX renderizza formule matematiche ed espressioni utilizzando la sintassi LaTeX. Supporta il cambio di contenuto basato su frame con transizioni configurabili.

Gli elementi LaTeX condividono i campi comuni da Elemento Base e Elemento Vista.

Proprietà LaTeX

ProprietàTipoRichiestoEsempioIntervallo di valoriDescrizione
typestringtrue-LaTeXIl tipo dell'elemento. Per gli elementi LaTeX, questo è sempre "LaTeX".
framesarraytrue--Un array di frame LaTeX. Ogni frame definisce un'espressione LaTeX da visualizzare in un intervallo di tempo specifico.
displayModebooleanfalse--Se renderizzare in modalità di visualizzazione (a livello di blocco, centrato) o in modalità inline.
detailnumberfalse--Il livello di dettaglio del rendering. Valori più alti producono curve più fluide.
targetWidthnumberfalse--La larghezza target per il contenuto LaTeX renderizzato, in pixel.
colorstringfalse--Il colore del testo LaTeX renderizzato, in formato esadecimale.

Oggetto Frame

Ogni elemento nell'array frames definisce un'espressione LaTeX e l'intervallo di tempo durante il quale viene visualizzata:

ProprietàTipoRichiestoEsempioIntervallo di valoriDescrizione
latexstringtrueE = mc^2-La stringa dell'espressione LaTeX da renderizzare.
startnumbertrue->= 0Il tempo di inizio di questo frame relativo all'elemento, in secondi.
endnumbertrue-> startIl tempo di fine di questo frame relativo all'elemento, in secondi. Deve essere maggiore di start.
transitionobjectfalse--Effetto di transizione quando si passa a questo frame.
styleobjectfalse--Override di stile per frame per colore, displayMode e targetWidth.

Oggetto Transizione:

  • type (stringa) - Tipo di transizione: 'fade', 'instant', o 'morph'. Predefinito: 'instant'
  • duration (numero) - Durata della transizione in secondi. Predefinito: 0.5

Oggetto Stile (override per frame):

  • color (stringa) - Override del colore a livello di elemento per questo frame
  • displayMode (booleano) - Override della modalità di visualizzazione per questo frame
  • targetWidth (numero) - Override della larghezza target per questo frame

Esempio

LaTeX a Frame Singolo

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
    }
  ]
}

Multi-Frame con Transizioni

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
      }
    }
  ]
}

Note

  • Gli elementi LaTeX utilizzano il rendering vettoriale per un output nitido a qualsiasi scala.
  • L'array frames deve contenere almeno un frame con una stringa latex valida.
  • Gli intervalli di tempo del frame (start a end) dovrebbero coprire la durata dell'elemento per una visualizzazione continua.
  • La transizione morph crea un'animazione fluida tra due espressioni LaTeX.