JSPDF Autotable не экспортирует нижний колонтитул таблицы - PullRequest
0 голосов
/ 29 января 2020

У меня есть таблица html, определенная на основе данных Dynami c. Таблица содержит thead, tfoot и tbody. Tfoot сопоставлен с указанными c значениями в моем json. Однако при использовании JSPDF Autotable и экспорте в PDF нижний колонтитул не отображается. Я видел информацию, но никаких примеров кода опции showfoot, и пробовал ее после do c .autotable, и даже после опций стиля, но безрезультатно. Нижний колонтитул не экспортируется. Я уверен, что это очень просто - но я не могу понять это. Примечание: я не хочу, чтобы JSDPF Autotable «создавал» нижний колонтитул - он определен, он является частью моей таблицы - я просто хочу, чтобы он отображался в pdf. Я нашел старый стекопоток от 2016 года, где это было упомянуто - Саймон Б. прокомментировал, что он будет добавлен - topi c был закрыт - но я нигде не смог найти пример кода.

Вот мой jspdf автозапускаемый код, где я пытался «показать мой нижний колонтитул» - но безрезультатно. Любая помощь приветствуется.

<script>
function generate() {
    //Creation of PDF document
    let doc = new jsPDF('l', 'pt');
    const totalPagesExp = '{total_pages_count_string}';


    var elem = document.getElementById('${pm.info.requestId}');
    var data = doc.autoTableHtmlToJson(elem);

    doc.autoTable(data.columns, data.rows, {
        headStyles: {
            cellWidth: 'wrap',
            fontSize: 10,
            lineWidth: 0,
            lineColor: [0, 0, 0],
            textColor: [0, 0, 0],
            fillColor: [255,255,255]
        },
        bodyStyles: {
            cellWidth: 'wrap',
            fontSize: 8,
            lineWidth: 0,
            lineColor: [0, 0, 0],
            textColor: [0, 0, 0],
            fillColor: [255,255,255]
        },
        footStyles: {
            cellWidth: 'wrap',
            fontSize: 10,
            lineWidth: 0,
            lineColor: [0, 0, 0],
            textColor: [0, 0, 0],
            fillColor: [211,211,211]
        },
        //Formatting of pages
        didDrawPage: function (data) {
            //Summa logo on top of the page
            doc.addImage('${pm.variables.get("summa")}', 'PNG', 20, 20, 145, 42.63);
            //Font sizes of report information
            doc.setFontSize(8);
            //Report information: portfolio name, knowledge time and report time
            doc.text(35, 75, '${pm.variables.get("portfolioName")}');
            doc.text(35, 85, '${pm.variables.get("reportTime")}');
            doc.text(35, 95, '${pm.variables.get("knowledgeTime")}');
            //Page numbers
            var str = "Page " + doc.internal.getNumberOfPages()
            if (typeof doc.putTotalPages === 'function') {
                str = str + " of " + totalPagesExp;
            };
            //Page size
            var pageSize = doc.internal.pageSize;
            var pageHeight = pageSize.height ? pageSize.height : pageSize.getHeight();
            doc.text('Theme "plain"', 14, 16);
        },
        margin: {
            top: 100
        },


    });
    //Number of pages
    if (typeof doc.putTotalPages === 'function') {
        doc.putTotalPages(totalPagesExp);
    },

    //--------------------------------------------------------------------------------------------------START
    //Change name of report if desired
    doc.save('${pm.info.requestName}${pm.variables.get("reportTime")}.pdf');
    //--------------------------------------------------------------------------------------------------END
}

...