从模板以编程方式生成libreoffice文本文档

时间:2013-12-05 01:50:30

标签: node.js libreoffice odfdom

我正试图找到一种以编程方式从.ott模板生成.odt文档的方法。这应该以编程方式完成。关于如何实现这一点的任何想法?

我找到了一些用Java生成.odt文件的方法(http://incubator.apache.org/odftoolkit/odfdom/index.html),但似乎无法从.ott模板生成文档。

实现语言或多或少不相关,但最好的是Node.js上的JavaScript。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

我在python中编写了一个名为Secretary的实用程序,用于从 ODT 模板创建ODT文档。您可以在https://github.com/christopher-ramirez/secretary查看它,也许它可以帮助您。下一个版本将支持将图像添加到渲染文档。

答案 1 :(得分:2)

您检查了node-odt吗?在我看来它支持你所需要的。

根据其文件:

  

用于处理OpenDocument文本文件的节点js工具。

和其中一个例子:

var fs = require('fs')
  , odt = require('odt')
  , template = odt.template
  , createWriteStream = fs.createWriteStream
var doc = 'mytemplate.ott';
var values = { 'subject': 'My subject value' };

// apply values

template(doc)
  .apply(values)
  .on('error', function(err){
    throw err;
  })
  .finalize(function(bytes){
    console.log('The document is ' + bytes + ' bytes large.');
  })
  .pipe(createWriteStream('mydocument.odt'))
  .on('close', function(){
    console.log('document written');
  });