[英]Is there a way to export json data to docx, pdf and excel in node or client javascript?
我一直在寻找一种将json数据导出为3种主要格式的方法,即[docx,xlsx和pdf]。
到目前为止,我已经能够在节点中简单地做到这一点:
var data = req.body["exportData"];
var headers = req.body["exportHeaders"];
var delimitedHeaders = "";
headers.forEach(function(item, index) {
if ((headers.length - 1) != index) {
delimitedHeaders += item + ',';
} else {
delimitedHeaders += item + '\r\n';
}
});
var excelData = "";
data.forEach(function (item) {
var keyCount = Object.keys(item).length;
var lastProp = Object.keys(item)[keyCount - 1];
for (var prop in item) {
if (item.hasOwnProperty(prop)) {
if (prop != lastProp) {
excelData += item[prop] + ',';
} else {
excelData += item[prop] + '\r\n';
}
}
}
});
fs.writeFile('file.xls', '\ufeff ' + headers + '\r\n' + excelData, {encoding: 'utf8'}, function (err) {
if (err) throw err;
res.end();
});
问题是它太简单了,无法添加任何与设计相关的功能,它也仅适用于xls和csv,但即使在xls中也无法用于doc和pdf,我希望它显示为带有标题的数据表,但我不能指定。
请帮我 :)。
您可以使用http://phantomjs.org/api/webpage/method/render.html 。
默认情况下支持PNG GIF JPEG PDF
在您的代码中,构建带有xls扩展名的csv格式文件。 您必须使用一些外部库/转换器进行数据导出,因为doc xls和pdf是容器。 例如,您可以使用虚拟pdf打印机来构建pdf文档。 另外,您可以构建rtf文件而不是doc http://www.pindari.com/rtf3.html 。 祝好运。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.