Skip to main content

Extract text from .docx files with support for inserted equations

Project description

docxlatex

A python library for extracting text and images from .docx files with LaTeX support

Influenced by python-docx and python-docx2txt. This project aims to expand the above libraries' functionality by allowing you to extract the equations in a .docx file and converts them to valid LaTeX, primarily for use with MathJax.

docxlatex DOES NOT convert the entire .docx file to a LaTeX source file.

docxlatex is still in beta and does not work perfectly on all equations. However, it does work with reasonable accuracy on standard symbols and equations, and works reliably when the equations in the document have been converted to linear format.

Installation

Install using pip
pip install docxlatex

Usage

Import the Document class from docxlatex

from docxlatex import Document

Create a Document object, giving it the path to the .docx file, and call the get_text() method

doc = Document("path/to/document")
text = doc.get_text()

You can also set some settings on the Document object to customize behaviour, like setting the delimiters that will go before and after an equation, and flags to extract header and footer text. Read the documentation at hrushikeshrv.github.io/docxlatex for all options.

doc.inline_delimiter = "%" # "$" by default
doc.block_delimiter = "%%" # "$$" by default

Limitation

docxlatex currently requires all the mathematical equations in the .docx document to be converted into linear format to extract successfully. I am adding support for equations in the professional format right now. Future releases will let you use it without having to use this workaround, but for now, make sure all the equations in the .docx file are converted into linear form.

To convert all your equations into linear format, click on any equation, go to the Equation tab, make sure LaTeX is selected, and click on Convert → All - Linear

Please report any bugs on this project's GitHub page docxlatex/issues

TODOs

  • Add support for equations in professional formatting

Project details


Download files

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

Source Distribution

docxlatex-0.1.6.tar.gz (5.7 kB view hashes)

Uploaded Source

Built Distribution

docxlatex-0.1.6-py3-none-any.whl (8.5 kB view hashes)

Uploaded Python 3

Supported by

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