Formelsatz, MathType, MathML und co.

sebastian.bulka@le-tex.de

Gliederung
  1. üblicher Formelsatz
  2. MathType Probleme
  3. MathType Extension

üblicher Formelsatz

  1. Autor erstellt Formeln
  2. Manuskript geht zur Bearbeitung
  3. ?
  4. fertige Daten (PDF, EPUB, html, ...)
Jeder Autor arbeitet anders.
Jede Formel ist anders.

Beispiel: a2

als Fließtext
als inline-Formel
als block-Formel

Beispiel: a2

mit Leerzeichen als Basis
mit doppelten, leeren Hochstellungen
als prescript

Beispiel: ±

als eigenes Zeichen:
± (U+00B1)
als Plus-Zeichen, unterstrichen
+

Ziele:

  • Konvertierung zu MathML, von dort ins Zielformat
  • Sinn erhalten (Intention des Autors)
  • Dokument für spätere Zwecke aufbereiten
  • möglichst automatisiert

Probleme in der Quelle

  • Vielfalt an Programmen zum Formelerfassung
  • Unsicherheit bei der Benutzung
  • Fehler in Programmen
  • Unterschiedliche Möglichkeiten in der Gestaltung

Folgen

  • Potenzial für falsche Interpretation (durch Maschinen oder Menschen)
  • Formeln müssen ggf. neu gesetzt werden (je nach Dokument einige 100)

Quelle: https://www.dessci.com/en/support/mathtype/tips/mt_charts/default.htm

MathType

  • Software für formelartige Inhalten
  • Eigenständige Software (Version 6.9)
  • Grundlage für Equation Editor 3.0 (Microsoft Word 2003)
  • einsetzbar in InDesign, Word, …

MathType

  • maschinenlesbares Format (MTEF)
  • generiert daraus Bilddateien (WMF/EPS/GIF/PICT)
  • MTEF
    EPS-Kommentar
    MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbbjxAHXgaruav
    P1wzZbItLDhis9wBH5garmWu51MyVXgariWvP52zKLMBNnharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpe
    pC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0x
    fr=xfr=xb9adbiqaaiaadiWaamaabaqaaqaadaqbaaGcbaWaaabCaeaacaWGPbGaeyypa0JaaGymaiab
    gUcaRiaaikdacqGHRaWkcaaIZaGaey4kaSIaaGinaiabgUcaRiaac6cacaGGUaGaaiOlaiabg2da9maa
    laaabaGaamOBaiabgwSixlaacIcacaWGUbGaey4kaSIaaGymaiaacMcaaeaacaaIYaaaaiaaxMaacaWL
    jaGaaCzcaiaaxMaacaWLjaGaaCzcaiaaxMaacqqIaCp=aSqaaiaadMgacqGH9aqpcaaIXaaabaGaam4A
    aaqdcqGHris5aaaa@57C9@

Export direkt durch MathType möglich, aber fehlerbehaftet:

  • MathML
  • TeX

MathType-Probleme und Fehler:

  • falsche/fehlende Zeichen
  • falsche Schnitte (steil/kursiv/fett)
  • Linux nicht unterstützt

MathType

generiert: i=1 k i=1+2+3+4+...= n(n+1) 2 MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbbjxAHXgaruavP1wzZbItLDhis9wBH5garmWu51MyVXgariWvP52zKLMBNnharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbiqaaiaadiWaamaabaqaaqaadaqbaaGcbaWaaabCaeaacaWGPbGaeyypa0JaaGymaiabgUcaRiaaikdacqGHRaWkcaaIZaGaey4kaSIaaGinaiabgUcaRiaac6cacaGGUaGaaiOlaiabg2da9maalaaabaGaamOBaiabgwSixlaacIcacaWGUbGaey4kaSIaaGymaiaacMcaaeaacaaIYaaaaiaaxMaacaWLjaGaaCzcaiaaxMaacaWLjaGaaCzcaiaaxMaacqqIaCp=aSqaaiaadMgacqGH9aqpcaaIXaaabaGaam4AaaqdcqGHris5aaaa@57C9@

Beispiel falscher Schnitt i = 1 k

              
                <m:munderover>
                <m:mo>∑</m:mo>
                <m:mrow>
                <m:mi>i</m:mi>
                <m:mo>=</m:mo>
                <m:mn>1</m:mn>
                </m:mrow>
                <m:mi>k</m:mi>
                </m:munderover>
              
            

Beispiel fehlendes Zeichen ✓ (U+2713)

              
                <mtext>&#x0009;</mtext><mtext></mtext>
              
            

mathtype-extension

Sponsoren

  • Carl Hanser Verlag
  • VDE Verband der Elektrotechnik Elektronik Informationstechnik e.V.
  • STM Document Engineering Private Limited

Zwei Komponenten:

  • Ruby: MTEF zu XML
  • XSLT: XML zu MathML

Ruby

  • 14.08.2015: erster commit (Jure Triglav)
  • 22.02.2017: erster commit (Sebastian Bulka)
  • 28.03.2017: Gleichungen aus Equation Editor 3
  • 01.05.2017: Übergang in Support
  • 21.08.2017: Gleichungen aus WMF
  • ausstehend: Gleichungen aus EPS (InDesign), GIF, MathML-Kommentaren

XSLT

  • 22.03.2017: erster commit (Sebastian Bulka)
  • 30.03.2017: Aufnahme in docx2hub (Word)
  • 06.04.2018: Aufnahme in idml2xml (InDesign)

mathtype-extension

generiert: i = 1 k i = 1 + 2 + 3 + 4 + . . . = n ( n + 1 ) 2

Beispiel richtiger Schnitt i = 1 k

              
                <munderover>
                <mo>∑</mo>
                <mrow>
                <mi mathvariant="normal">i</mi>
                <mo>=</mo>
                <mn>1</mn>
                </mrow>
                <mi mathvariant="normal">k</mi>
                </munderover>
              
            

Beispiel vorhandenes Zeichen ✓ (U+2713)

              
                <mspace width="1em"/>
                <mspace width="1em"/>
                <mspace width="1em"/>
                <mspace width="1em"/>
                <mspace width="1em"/>
                <mspace width="1em"/>
                <mspace width="1em"/>
                <mtext>✔</mtext>
              
            

Beispiel — MathType zu OMML (Word 2013)

Formeln (WMF) aus InDesign

1 3 sin250 ° 15 x μ 2 σ a 2 + b 2 3 π 2 2 1 16

Zusammenfassung

  • Formeln werden aus der Quelle zu MathML konvertiert, von dort zum Zielformat
  • Formelerfassung kann die automatische Verarbeitung leicht — oder unmöglich — machen
  • Mit MathType erfasste Formeln liefern mit mathtype-extension eine bessere Abbildung der Quelle
  • Fehler/Features in mathtype-extension können prinzipiell von jedem bearbeitet werden

Vielen Dank für
Ihre Aufmerksamkeit