我有作为HTTP响应传入的数据。我想以PDF格式获取此数据。我可以使用jsPDF模块以PDF格式获取数据,但它采用JSON格式。我想要普通文本格式或表格格式的数据。
我的列名是“日期”,“产品数量”,“尺寸”,“压缩尺寸”
与点击按钮相关的功能如下
downloadPDF() {
const doc = new jsPDF();
const col = ["Date","Number of Products","Size","Compressed Size"];
const rows = [];
for (const key in this.response){
const temp = [key, this.response[key]];
rows.push(temp);
}
doc.autoTable(col, rows);
const filename = "test.pdf";
doc.save(filename);
但是我猜想自动表无法正常工作,甚至在导入自动表时也给我一个错误。
答案 0 :(得分:0)
也许const temp = [key, JSON.stringify(this.response[key])];
答案 1 :(得分:0)
这将生成我在本地系统上测试的pdf。我使用表格而不是自动表格,因为我在文档中找不到它。
// you can directly use your response format is array of objects
var data =
[{
Date: "29th April",
'Number of Products': "2",
Size: "25",
'Compressed Size': "22",
}];
function createHeaders(keys) {
var result = [];
for (var i = 0; i < keys.length; i += 1) {
result.push({
'id' : keys[i],
'name': keys[i],
'prompt': keys[i],
'width': 65,
'align': 'center',
'padding': 0
});
}
return result;
}
var headers = createHeaders(["Date", "Number of Products", "Size", "Compressed Size"]);
var doc = new jsPDF({ putOnlyUsedFonts: true, orientation: 'landscape' });
doc.table(1, 1, data, headers, { autoSize: true });