UNPKG

unoconv2

Version:

Based on node-unoconv by gfloyd with a childProcess.spawn fix

64 lines (34 loc) 1.78 kB
# node-unoconv A node.js wrapper for converting documents with [unoconv](http://dag.wieers.com/home-made/unoconv/). ## Requirements [Unoconv](http://dag.wieers.com/home-made/unoconv/) is required, which requires [LibreOffice](http://www.libreoffice.org/) (or OpenOffice.) ## Install Install with: npm install unoconv ## Converting documents var unoconv = require('unoconv'); unoconv.convert('document.docx', 'pdf', function (err, result) { // result is returned as a Buffer fs.writeFile('converted.pdf', result); }); ## Starting a listener You can also start a unoconv listener to avoid launching Libre/OpenOffice on every conversion: unoconv.listen(); ## API ### unoconv.convert(file, outputFormat, [options], callback) Converts `file` to the specified `outputFormat`. `options` is an object with the following properties: * `bin` Path to the unoconv binary * `port` Unoconv listener port to connect to `callback` gets the arguments `err` and `result`. `result` is returned as a Buffer object. ### unoconv.listen([options]) Starts a new unoconv listener. `options` accepts the same parameters as `convert()`. Returns a `ChildProcess` object. You can handle errors by listening to the `stderr` property: var listener = unoconv.listen({ port: 2002 }); listener.stderr.on('data', function (data) { console.log('stderr: ' + data.toString('utf8')); }); ### unoconv.detectSupportedFormats([options], callback) This function parses the output of `unoconv --show` to attempt to detect supported output formats. `options` is an object with the following properties: * `bin` Path to the unoconv binary `callback` gets the arguments `err` and `result`. `result` is an object containing a collection of supported document types and output formats.