【问题标题】:Pdfmake duplicate JSON Object contentpdfmake 重复 JSON 对象内容
【发布时间】:2018-03-28 15:49:54
【问题描述】:

我有一个pdfmake 脚本,可以根据我的需要从动态元素中正确生成pdf。

但是,我需要 duplicate 我的全部内容才能在最终 PDF 中制作我的页面的 copy。

动态内容存储在JSON object“内容”中。

我尝试执行以下操作:content = content+content 但我的 pdf 返回类似:[object Object][object Object]

使用pdkmake playground,我注意到这个命令有时会起作用,正如您在以下脚本中看到的那样:

content= [
        'this text will be duplicated..or not  '
    ];

var dd = {
    content: content+content
    } 

但只要JSON object 稍微复杂一点,它就会失败:

content= [
    {
       text: 'this text will be duplicated..or not  ',
       pageBreak: 'after',
    }
    ];

var dd = {
    content: content+content
    }

所以,我尝试使用content = $.merge( content, content )。它似乎复制了一些英特尔,但是在生成 PDF 时,结果是一个空白页,其中没有显示文本:

content= [
    {
       text: 'this text will be duplicated..or not  ',
       pageBreak: 'after',
    }
    ];

content = $.merge( content, content );
var dd = {
    content: content
    }

一种解决方案是再次调用生成动态 JSON 对象的脚本,但它不会像我想要的那样真正“干净”。

您能否弄清楚为什么它不起作用并向我解释组合两个对象的正确方法是什么?

对我来说,问题是content 看起来像content = [{1},{2},{3}],当我做content=content+content 时,它会保留[],结果类似于:content = [[{1},{2},{3}],[{1},{2},{3}]] 而不是content = [[{1},{2},{3},{1},{2},{3}]]。我对么 ?

对不起,如果我不是很清楚。

【问题讨论】:

    标签: jquery arrays json object pdfmake


    【解决方案1】:

    试试,

    var content = [
            'My text'
        ];
    
    var dd = {
        content:[content, {text:"", pageBreak: "after"}, content] //Break the page and repeat the content in next page
    }
    

    【讨论】:

      猜你喜欢
      • 2017-09-27
      • 2017-03-27
      • 2016-08-09
      • 1970-01-01
      • 2021-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多