Jspdf v3 функция автозапуска colspan не работает - PullRequest
0 голосов
/ 01 апреля 2019

Я новичок в angular и jspdf, поэтому, пожалуйста, помогите мне. Я пытаюсь создать PDF с использованием данных JSON, и я использую JSPDF и JSPDF Autotable в Angular 6 для того же. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу применить colspan к заголовку таблицы. Я пробовал много разных доступных кодов, но не повезло. Наконец, я использовал код, доступный на github jspdfautotable / example.js, но заголовок все же не такой, как ожидалось.

Ниже я упомянул https://github.com/simonbengtsson/jsPDFAutoTable/blob/master/examples/examples.js

export(){
    // Col spans and row spans
    var doc = new jsPDF('p', 'pt');
    doc.setFontSize(12);
    doc.setTextColor(0);
    doc.setFontStyle('bold');
    doc.text('Rowspan and colspan', 40, 50);
    let body = this.bodyRows(15);
    for (var i = 0; i < body.length; i++) {
        var row = body[i];
        if (i % 5 === 0) {
        row['id'] = {rowSpan: 5, content: i / 5 + 1, styles: {valign: 'middle', halign: 'center'}};
        }
    }
    let head = [
    [
        {content: 'Data', colSpan: 5, styles: {halign: 'center', fillColor: [22, 160, 133]}},
    ],
        ['ID', 'Name', 'Email', 'City', 'Sum']
    ]
    doc.autoTable({
    startY: 60,
    head: head,
    body: body,
    theme: 'grid'
    });
    doc.save('TESTCOLSPAN.pdf');
    }

    bodyRows(rowCount) {
        rowCount = rowCount || 10;
        let body = [];
        for (var j = 1; j <= rowCount; j++) {
            body.push({
            id: j,
            name: 'PARTH',
            email: 'PARTH',
            city: 'PARTH',
            expenses: 'PARTH',
            });
        }
    return body;
}

Вывод pdf изображения:

1 Ответ

0 голосов
/ 24 мая 2019

вместо

let head = [
    [
        {content: 'Data', colSpan: 5, styles: {halign: 'center', fillColor: [22, 160, 133]}},
    ],
        ['ID', 'Name', 'Email', 'City', 'Sum']
    ]

Пожалуйста, попробуйте это,

let head = [

      {id:{content: 'Data', colSpan: 5, styles: {halign: 'center', fillColor: [22, 160, 133]}}},

      {id:'ID', name:'Name', email:'Email', city:'City', expenses:'Sum'}
]

у меня работает

выход

...