Skip to content

jaybill/node-latex

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-latex

Simple LaTeX wrapper for node.js

Installation

First, you need to install latex. On any Debian based system, you can do this with the following command:

sudo apt-get install texlive

On OS X, you will need to install MacPorts first. Once that is set up, you can then do:

sudo port install texlive

For Windows, you can try using cygwin though I have not tested this.

Once you have a working version of latex, you can install node-latex using the following command:

npm install latex

Usage

Here is an example of how to use the library in one line:

require("latex")([
  "\\documentclass{article}",
  "\\begin{document}",
  "hello world",
  "\\end{document}"
]).pipe(process.stdout)

This will spit out a formatted PDF article to stdout that says "hello world". The result of calling the function is returned as a stream and can be processed using other tools. If you want to convert the result into an image or pdf, you can use graphics magic.

require("latex")(doc[, options])

The only exported function from node-latex is a function that takes as input a raw LaTeX document and returns a stream representing the document state. The type of doc must be one of the following:

  • A string
  • A Buffer
  • An array of strings and/or Buffers
  • A readable Stream

In addition, you can also specify the following additional parameters via the options struct:

  • command: An optional override for the latex command. By default calls latex.
  • format: Either "pdf" or "dvi". By default returns a pdf.
  • args: An optional array of additional command line arguments to be supplied to the latex/pdflatex command, i.e. ['-src-specials']
  • env: An optional environment object to be used in place of process.env. If not specified, process.env will be used by default.

The function returns a readable Stream object representing a LaTeX encoded document in either PDF or DVI format. If there were errors in the syntax of the document, they will be raised as errors on this Stream object.

Credits

(c) 2013 Mikola Lysenko. MIT License

About

node.js wrapper for LaTeX

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%