Skip to main content

Pure Python library for LaTeX to MathML conversion

Project description

latex2mathml

Pure Python library for LaTeX to MathML conversion

License License Version Version
Travis CI Travis CI Coverage CodeCov
Supported versions Python Versions Wheel Wheel
Status Status Downloads Downloads

Support

If you like latex2mathml or if it is useful to you, show your support by buying me a coffee.

Buy Me A Coffee

Installation

pip install latex2mathml

Usage

Python

import latex2mathml.converter

latex_input = "<your_latex_string>"
mathml_output = latex2mathml.converter.convert(latex_input)

Command-line

% latex2mathml -h
usage: l2m [-h] [-V] [-t TEXT | -f FILE]

Pure Python library for LaTeX to MathML conversion

optional arguments:
  -h, --help            show this help message and exit
  -V, --version         Show version

required arguments:
  -t TEXT, --text TEXT  Text
  -f FILE, --file FILE  File

Examples

Identifiers, Numbers and Operators

LaTeX Input MathML Output
x
<math>
    <mrow>
        <mi>x</mi>
    </mrow>
</math>
        
xyz
<math>
    <mrow>
        <mi>x</mi>
        <mi>y</mi>
        <mi>z</mi>
    </mrow>
</math>
        
3
     
<math>
    <mrow>
        <mn>3</mn>
    </mrow>
</math>
        
444
     
<math>
    <mrow>
        <mn>444</mn>
    </mrow>
</math>
        
12.34
     
<math>
    <mrow>
        <mn>12.34</mn>
    </mrow>
</math>
        
12x
     
<math>
    <mrow>
        <mn>12</mn>
        <mi>x</mi>
    </mrow>
</math>
        
3-2
     
<math>
    <mrow>
        <mn>3</mn>
        <mo>−</mo>
        <mn>2</mn>
    </mrow>
</math>
        

Subscripts and Superscripts

LaTeX Input MathML Output
a_b
<math>
    <mrow>
        <msub>
            <mi>a</mi>
            <mi>b</mi>
        </msub>
    </mrow>
</math>
        
a^b
<math>
    <mrow>
        <msup>
            <mi>a</mi>
            <mi>b</mi>
        </msup>
    </mrow>
</math>
        
a_b^c
<math>
    <mrow>
        <msubsup>
            <mi>a</mi>
            <mi>b</mi>
            <mi>c</mi>
        </msubsup>
    </mrow>
</math>
        

Fractions

LaTeX Input MathML Output
\frac{1}{2}
      
<math>
    <mrow>
        <mfrac>
            <mrow>
                <mn>1</mn>
            </mrow>
            <mrow>
                <mn>2</mn>
            </mrow>
        </mfrac>
    </mrow>
</math>
        

Roots

LaTeX Input MathML Output
\sqrt{2}
      
<math>
    <mrow>
        <msqrt>
            <mrow>
                <mn>2</mn>
            </mrow>
        </msqrt>
    </mrow>
</math>
        
\sqrt[3]{2}
 
<math>
    <mrow>
        <mroot>
            <mrow>
                <mn>2</mn>
            </mrow>
            <mrow>
                <mn>3</mn>
            </mrow>
        </mroot>
    </mrow>
</math>
        

Matrices

LaTeX Input MathML Output
\begin{matrix}a & b \\ c & d \end{matrix}
<math>
    <mrow>
        <mtable>
            <mtr>
                <mtd>
                    <mi>a</mi>
                </mtd>
                <mtd>
                    <mi>b</mi>
                </mtd>
            </mtr>
            <mtr>
                <mtd>
                    <mi>c</mi>
                </mtd>
                <mtd>
                    <mi>d</mi>
                </mtd>
            </mtr>
        </mtable>
    </mrow>
</math>
        
\begin{matrix*}[r]a & b \\ c & d \end{matrix*}
<math>
    <mrow>
        <mtable>
            <mtr>
                <mtd columnalign='right'>
                    <mi>a</mi>
                </mtd>
                <mtd columnalign='right'>
                    <mi>b</mi>
                </mtd>
            </mtr>
            <mtr>
                <mtd columnalign='right'>
                    <mi>c</mi>
                </mtd>
                <mtd columnalign='right'>
                    <mi>d</mi>
                </mtd>
            </mtr>
        </mtable>
    </mrow>
</math>
        
A_{m,n} = 
 \begin{bmatrix}
  a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\
  a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\
  \vdots  & \vdots  & \ddots & \vdots  \\
  a_{m,1} & a_{m,2} & \cdots & a_{m,n} 
 \end{bmatrix}
        
<math>
    <mrow>
        <msub>
            <mi>A</mi>
            <mrow>
                <mi>m</mi>
                <mi>,</mi>
                <mi>n</mi>
            </mrow>
        </msub>
        <mo>=</mo>
        <mo>[</mo>
        <mtable>
            <mtr>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mn>1</mn>
                            <mi>,</mi>
                            <mn>1</mn>
                        </mrow>
                    </msub>
                </mtd>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mn>1</mn>
                            <mi>,</mi>
                            <mn>2</mn>
                        </mrow>
                    </msub>
                </mtd>
                <mtd>
                    <mo>⋯</mo>
                </mtd>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mn>1</mn>
                            <mi>,</mi>
                            <mi>n</mi>
                        </mrow>
                    </msub>
                </mtd>
            </mtr>
            <mtr>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mn>2</mn>
                            <mi>,</mi>
                            <mn>1</mn>
                        </mrow>
                    </msub>
                </mtd>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mn>2</mn>
                            <mi>,</mi>
                            <mn>2</mn>
                        </mrow>
                    </msub>
                </mtd>
                <mtd>
                    <mo>⋯</mo>
                </mtd>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mn>2</mn>
                            <mi>,</mi>
                            <mi>n</mi>
                        </mrow>
                    </msub>
                </mtd>
            </mtr>
            <mtr>
                <mtd>
                    <mo>⋮</mo>
                </mtd>
                <mtd>
                    <mo>⋮</mo>
                </mtd>
                <mtd>
                    <mo>⋱</mo>
                </mtd>
                <mtd>
                    <mo>⋮</mo>
                </mtd>
            </mtr>
            <mtr>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mi>m</mi>
                            <mi>,</mi>
                            <mn>1</mn>
                        </mrow>
                    </msub>
                </mtd>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mi>m</mi>
                            <mi>,</mi>
                            <mn>2</mn>
                        </mrow>
                    </msub>
                </mtd>
                <mtd>
                    <mo>⋯</mo>
                </mtd>
                <mtd>
                    <msub>
                        <mi>a</mi>
                        <mrow>
                            <mi>m</mi>
                            <mi>,</mi>
                            <mi>n</mi>
                        </mrow>
                    </msub>
                </mtd>
            </mtr>
        </mtable>
        <mo>]</mo>
    </mrow>
</math>
        

References

LaTeX

MathML

Author

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

latex2mathml-2.14.1.tar.gz (65.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

latex2mathml-2.14.1-py3-none-any.whl (65.7 kB view details)

Uploaded Python 3

File details

Details for the file latex2mathml-2.14.1.tar.gz.

File metadata

  • Download URL: latex2mathml-2.14.1.tar.gz
  • Upload date:
  • Size: 65.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.9 CPython/3.6.7 Linux/4.15.0-1028-gcp

File hashes

Hashes for latex2mathml-2.14.1.tar.gz
Algorithm Hash digest
SHA256 4db98a923466db6fe0d6ba3da66682ded5f94e5b920a5113303d890d1f3e93ca
MD5 80f8f60c4234a0082055bca93f35d7b0
BLAKE2b-256 0136d17145a0768daceba4e8d5c921c25d3db961302063be45be67f6730435ba

See more details on using hashes here.

File details

Details for the file latex2mathml-2.14.1-py3-none-any.whl.

File metadata

  • Download URL: latex2mathml-2.14.1-py3-none-any.whl
  • Upload date:
  • Size: 65.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.9 CPython/3.6.7 Linux/4.15.0-1028-gcp

File hashes

Hashes for latex2mathml-2.14.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bf068c1ecd9655a736e2a84996ee40f3324741196dc52b0e33dae42a332bf970
MD5 5dfe759e6b281f14d45156cf2e5dcddb
BLAKE2b-256 68e6e786185f7420fcad4ebc39f0b28eea246a3c8f92a1f56578901a9ede0b3a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page