# latex

> A simple wrapper for LaTeX in node.js

Latest version **0.0.1** (published 2013-01-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install latex
pnpm add latex
yarn add latex
bun add latex
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.1 |
| Published | 2013-01-28 |
| First published | 2013-01-28 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 24 |
| Author | Mikola Lysenko |
| Maintainers | mikolalysenko |
| Keywords | latex, dvi, tex, mathmode, equations, typesetting, math, pdflatex, dvi, pdf |

## Links

- npm: https://www.npmjs.com/package/latex
- Repository: https://github.com/mikolalysenko/node-latex
- npm.io page: https://npm.io/package/latex

## Dependencies (3)

- [temp](https://npm.io/package/temp.md) ~0.5.0
- [through](https://npm.io/package/through.md) ~2.1.0
- [fs-extra](https://npm.io/package/fs-extra.md) ~0.3.2

## Alternatives

- [@cantoo/pdf-lib](https://npm.io/package/@cantoo/pdf-lib.md) — 297.9K weekly downloads
- [datatables.net-buttons](https://npm.io/package/datatables.net-buttons.md) — 200.1K weekly downloads
- [@ckeditor/ckeditor5-export-pdf](https://npm.io/package/@ckeditor/ckeditor5-export-pdf.md) — 167.0K weekly downloads
- [scanbot-web-sdk](https://npm.io/package/scanbot-web-sdk.md) — 15.0K weekly downloads
- [@syncfusion/ej2-angular-pdfviewer](https://npm.io/package/@syncfusion/ej2-angular-pdfviewer.md) — 8.8K weekly downloads

## Recent versions

- 0.0.1 (latest) — 2013-01-28
- 0.0.0 — 2013-01-28

## README

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](http://www.macports.org/) 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](http://aheckmann.github.com/gm/).

`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](http://nodejs.org/api/buffer.html)
* An array of strings and/or Buffers
* A readable [Stream](http://nodejs.org/api/stream.html)

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.

The function returns a readable Stream object representing a LaTeX encoded document in either PDF or [DVI format](http://en.wikipedia.org/wiki/Device_independent_file_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

---
_Source: https://npm.io/package/latex · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
