我们正在使用 pdfMake javascript 框架将 HTML 呈现为 PDF 文档。
鉴于这样呈现了一个简单的工作文档定义对象:
var docDefinition = {
content: { stack: [
{ text: 'foo', style: 'normal', margin: [0,1,0,0] },
{ text: 'bar', style: 'bold', margin: [0,1,0,0] }
]}
}
鉴于这objectives
是一个 HTML 元素数组,我们正在尝试解析所述元素并stack
通过函数返回定义。像这样:
var docDefinition = {
content: { stack: parseSection(objectives) }
}
这是该功能的一个大大简化的摘要:
function parseSection(section){
var stack = []
...
str1 = "{ text:'" + fooVar + "',style: 'normal', margin: [0,1,0,0] }"
str2 = "{ text:'" + barVar + "',style: 'bold', margin: [0,1,0,0] }"
stack.push( str1 )
stack.push( str2 )
...
return stack
})
问题是,pdfMake 将逐字呈现为字符串str1 和 str2,而不是处理定义。
我们还能做什么(或者我们还能寻找什么)来将堆栈定义作为一个数组(对象?)传递给 pdfMake 的文档定义可以正确理解和呈现的?