Formulix Documentazione← Torna al sito
Riferimenti / Formulix 0.1.0

HTML e visualizzazione

I contenuti salvati devono restare leggibili fuori dall’editor e senza un piano attivo.

Formato salvato

ElementoHTML salvatoDa preservare
Formula<math data-latex="…">…</math>MathML per la lettura e data-latex per la modifica.
Calcolo / risoluzionediv.conta-armada, tabelle, testo e MathMLdata-conta con JSON, se presente; stili inline e struttura.
Grafico / disegno<img> con PNGsrc, alt, dimensioni e data-grafico o data-quimica.
Formula chimica<math data-quimica="…">MathML, LaTeX e JSON di configurazione.
CKEditor / Tiptapspan/div[data-formulix]Wrapper e figli sanitizzati; Tiptap consente anche JSON.

Durante la modifica TinyMCE usa .eqx[data-mathml]; al salvataggio l’adattatore produce MathML portabile. L’elemento temporaneo non è il formato salvato. LaTeX resta in data-latex perché il sanitizzatore di TinyMCE 8 elimina semantics/annotation.

<math xmlns="http://www.w3.org/1998/Math/MathML" data-latex="x^2">
  <msup><mi>x</mi><mn>2</mn></msup>
</math>

Visualizzazione per gli studenti

Mostra l’HTML salvato con la gestione sicura della piattaforma. I browser moderni visualizzano MathML; tabelle e immagini non richiedono Formulix per la lettura. I PNG devono restare accessibili nello spazio della piattaforma. Eliminare i metadati può conservare l’aspetto ma impedire la modifica.

Per browser più vecchi il progetto raccomanda MathJax 3. Ospita i file oppure carica il componente seguente nella pagina di lettura secondo la guida ufficiale MathJax 3. L’esempio usa un CDN esterno: valuta CSP e privacy per le risorse di terzi.

<script defer
  src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js">
</script>

Per contenuti aggiunti dinamicamente esegui MathJax.typesetPromise([element]) quando MathJax è pronto. Non serve caricare Formulix nella pagina degli studenti.

Sanitizzazione e accessibilità

Conserva solo elementi e attributi necessari con regole esplicite nel sanitizzatore. Non disabilitare la sanitizzazione dell’HTML non fidato. Controlla MathML, tabelle, stili e metadati nel ciclo salva/riapri. Drupal alpha ha un vincolo specifico su Full HTML.

Mantieni i testi alternativi delle immagini. MathML aiuta le tecnologie assistive, ma non sostituisce prove con editor, browser e lettore di schermo usati dalla scuola.