javascript - 使用javascript将HTML表格转换为pdf

标签 javascript html angularjs pdf jspdf

我创建了一个应用程序,用于使用我使用的 javascript 下载 html 表格到 pdf jsPDF 插件。该应用程序工作正常,但问题是表格不正确。表格和标题的宽度未正确对齐。我正在使用 angularjs 创建表格。

谁能给我一些关于这个问题的建议

JSFiddle

function demoFromHTML() {
    var pdf = new jsPDF('p', 'pt', 'letter');
    source = $('#customers')[0];
    specialElementHandlers = {
        '#bypassme': function (element, renderer) {
            return true
        }
    };
    margins = {
        top: 4,
        bottom: 4,
        left: 4,
        width: 522
    };
    pdf.fromHTML(
    source, // HTML string or DOM elem ref.
    margins.left, // x coord
    margins.top, { // y coord
        'width': margins.width, // max width of content on PDF
        'elementHandlers': specialElementHandlers
    },

    function (dispose) {
        pdf.save('Test.pdf');
    }, margins);
}

最佳答案

我想您目前必须手动执行此操作 ( fiddle ):

function demoFromHTML() {
    var pdf = new jsPDF('p', 'pt', 'letter');

    pdf.cellInitialize();
    pdf.setFontSize(10);
    $.each( $('#customers tr'), function (i, row){
        $.each( $(row).find("td, th"), function(j, cell){
            var txt = $(cell).text().trim() || " ";
            var width = (j==4) ? 40 : 70; //make 4th column smaller
            pdf.cell(10, 50, width, 30, txt, i);
        });
    });

    pdf.save('sample-file.pdf');
}

关于javascript - 使用javascript将HTML表格转换为pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26100014/

相关文章:

javascript - 在数组中设置多个谷歌地图坐标对象

javascript - JS : Javascript closure issue in prototype instance

javascript - Html 选择多个在 onchange 事件中获取所有值

javascript - 在网站底部放置一个横幅,将所有元素向上推

javascript - 当开发工具打开时,IE 11 需要很长时间才能加载 ng-option

javascript - Extjs KeyMap 不作用于defaultEventAction,而是执行默认的浏览器操作

javascript - 在 .NET 环境中优雅地缩小动态生成的 javascript?

html - Materialise - 如何知道我们可以设置的类选项?

angularjs - $tooltipProvider 在 Angular 1.4.7+ 时出现错误

javascript - $state.go 方法不切换到其他状态 - angularjs