1

是否可以使用 pdfmake.min.js 在 pdf 中生成的表中重复行?我正在创建一个 PDF 文件。其中我需要根据我的 api 响应重复表行,这是一个对象数组。

var dd = {content: [
                    {   
                     table: {
                        body: [
                               [ 'Col1', 'Col2', 'Col3'],
                               [ '1', '2', '3'],
                               [ '1', '2', '3']
                              ]
                            }
                    }
                   ]
         };

这是使用 pdfmake 创建表格的简单方法。我的问题是我们可以使用任何替代方法(如 ng-repeat)来重复表行中的大数据吗?我得到生成 pdf 的最佳方法是使用 pdfmake。建议我如何重复表格行。

4

1 回答 1

4

所以我假设你正在创建你的pdf,比如: pdfMake.createPdf(dd).open();

其中dd变量基本上只是一个简单的 javascript 对象。您可以使用数组等任何方式扩展它,例如:

var
  body = [],
  content = [],
  dd = {
    'content' : content 
  };

body.push(['col1', 'col2', 'col3']);

var secondRow = [];

// Push numbers 0, 1, 2
for (var i = 0; i < 3; i++) {
  secondRow.push("i is:" + i);
}

body.push(secondRow);

// ...
// Manipulate the 'body' any way you want.
// ...

// Lets push the manipulated body into the 'content'
// which is already inside the 'dd'.
content.push({
  'table' : {
    'body' : body
  }
});

// Now with all the manipulated data, create the pdf.
pdfMake.createPdf(dd).open();

所以关键是,要以你想要的方式操作这个 js 对象,当你准备好并完成后,调用createPdf.

如果您将我的脚本粘贴到pdfmake-playground中,您就会明白我的意思。

于 2016-03-17T07:26:18.270 回答