For my final year project as part of my Computation degree at The University of Manchester I chose the task of converted documents produced in the file format LaTeX into British ASCII Braille.
What is LaTeX?
LaTeX is a markup language predominantly used in the production of scientific documents. The markup enables the author to produce a consistent layout through the document while providing the ability to represent complex mathematics and scientific information.
Many scientific documents are not converted into Braille due to the complexity of the documents, resulting in an extremely time consuming process needing to be performed manually to correctly translate the information into a consistent format. However by producing an automatic method for translation of the semantic markup information contained within LaTeX documents, much of this process could be automated enabling vast amounts of information to be made available to braille readers.
Using Java, I produce a four stage extensible framework for translation capable of converting the majority of information with a LaTeX document into a British ASCII Braille document.
The process followed the following four phases:
Phase 1 – Pre Processing
A set of translations to ensure the document was in a consistent format and to identify appropriate blocks of information.
Phase 2 – Processing
Formatting is applied and blocks of information translated into a form appropriate for Braille representation according to the information within the British ASCII Braille handbook. Formatting meta information is insert into the source to enable more appropriate formatting to be applied later.
Phase 3 – Conversion into Braille
Using an existing Java library produced by Alasdair King as part of his Masters degree, I was able to convert the intermediate source into it’s Braille equivalent. This is performed in blocks, retaining the meta information inserted in Phase 2 and to enable some basic formatting to take place.
Phase 4 – Formatting
Meta formatting information is replaced with appropriate Braille equivalents, and final formatting is performed to ensure the document is in a consistent state.
Because the framework was designed to be an extensible framework for translation, the process can be adapted to translate from any block based document format into an formatted output. As a proof of concept, I was able to translate the formatting of LaTeX documents efficiently into HTML pages, omitting phase 3 of the process to prevent conversion into Braille.