Javascript jspdf自动表格:包装文本中的动态宽度和高度

Javascript jspdf自动表格:包装文本中的动态宽度和高度,javascript,pdf-generation,jspdf-autotable,Javascript,Pdf Generation,Jspdf Autotable,我正在尝试使用jspdf生成PDF,并使用以下代码自动生成: <script src="https://unpkg.com/jspdf@1.3.3/dist/jspdf.min.js"></script> <script src="https://unpkg.com/jspdf-autotable@2.3.1/dist/jspdf.plugin.autotable.js"></script> $(document).ready(f

我正在尝试使用jspdf生成PDF,并使用以下代码自动生成:

    <script src="https://unpkg.com/jspdf@1.3.3/dist/jspdf.min.js"></script>
    <script src="https://unpkg.com/jspdf-autotable@2.3.1/dist/jspdf.plugin.autotable.js"></script>

$(document).ready(function() {

        var columns = [
            {title: "Dirigido a", dataKey: "Dirigidoa"},
        ];

        var rows = [
            {Dirigidoa:"DIPLOMADOS UNIVERSITARIOS EN ENFERMERIA PREFERENTEMENTE DE LA GAI TALAVERA DE LA REINA"},
            {Dirigidoa:"Actualizar conocimientos en el manejo de las heridas y la utilización racional de los productos de cura en ambiente húmedo (CAH)"
            + "1.Conocer el comportamiento de la herida en sus distintas fases. 2.Valorar al paciente con heridas de evolución tórpida. 3.Manejar los instrumentos"
            + "de valoración y medición de la lesión.4.Conocer la evolución histórica del tratamiento de las heridas desde el mundo antiguo hasta la actualidad."
            + "5.Comprender la importancia de la preparación del lecho de la herida. 6.Solventar las causas subyacentes. 7.Conocer el múltiple arsenal de productos" 
            + "para el tratamiento de las heridas. 8.Elegir el producto adecuado en cada fase y estadio de la herida. 9.Valorar la importancia de la prevención de las UPP."
            + "10. Conocer y abordar los distintos tipos de ostomías. 11. Diferenciar y tratar las lesiones de los miembros inferiores según el componente vascular."
            + "12. Conocer el comportamiento del pie diabético y los distintos abordajes terapéuticos"},
            {Dirigidoa:"asdlkasjdlkajsd asdasdasd"}
        ];                      

        var doc = jsPDF("p", "pt","a4");
        doc.autoTable(columns, rows, {  
            startY: false, 
            theme: 'grid',  
            //tableWidth: 'auto', 
            columnWidth: 'wrap', 
            showHeader: 'everyPage',
            columnStyles: {
                0: {columnWidth: 100}
            },
            headerStyles: {theme: 'grid'},
            styles: {overflow: 'linebreak', columnWidth: 'wrap', font: 'arial', fontSize: 10, cellPadding: 4, overflowColumns: 'linebreak'},
        });
        doc.save('table.pdf');               

});

$(文档).ready(函数(){
变量列=[
{标题:“Dirigido a”,数据键:“Dirigidoa”},
];
变量行=[
{Dirigidoa:“莱纳大学优先文凭”},
{Dirigidoa:“环境保护区(CAH)的医疗卫生和医疗卫生产品种族利用的实施方案”
+“1.公司的财务状况。2.公司的财务状况。3.公司的财务状况”
+“lesión的valoración和medición.4.世界安提瓜运动的历史演变过程。”
+“5.准备工作的重要性。6.解决问题的能力。7.生产的多个军火库”
+“heridas公司的战略。8.heridas公司的产品和资产。9.las UPP prevención de las UPP公司的重要价值。”
+“10.造口区的施工和施工。11.血管成分的下部结构的差异和施工。”
+“12.社区社区和社区社区社区”,
{Dirigidoa:“asdlkasjdlkajsd asdasdasd”}
];                      
var doc=jsPDF(“p”、“pt”、“a4”);
文档自动表(列、行、{
斯塔蒂:错,
主题:“网格”,
//tableWidth:'自动',
columnWidth:'换行',
showHeader:“everyPage”,
专栏风格:{
0:{columnWidth:100}
},
headerStyles:{theme:'grid'},
样式:{overflow:'linebreak',columnWidth:'wrap',font:'arial',fontSize:10,cellPadding:4,overflowColumns:'linebreak'},
});
doc.save('table.pdf');
});
我得到的结果如下:

在生成的PDF中可以看到以下问题:

  • 这张桌子的右边距满了
  • 文本太长时不会出现换行。发生这种情况时,将添加省略号
  • 这个想法是动态加载行,以便字段的文本长度可以变化,因此我不能给单元格一个固定的宽度。

    如何解决这些问题?

    更改此行

    样式:{overflow:'linebreak',columnWidth:'wrap',font:'arial',fontSize:10,cellPadding:4,overflowColumns:'linebreak'}

    样式:{overflow:'linebreak',columnWidth:'100',font:'arial',fontSize:10,cellPadding:4,overflowColumns:'linebreak'}

    
    $(文档).ready(函数()
    {
    变量列=[
    {标题:“Dirigido a”,数据键:“Dirigidoa”},
    ];
    变量行=[
    {Dirigidoa:“莱纳大学优先文凭”},
    {Dirigidoa:“环境保护区(CAH)的医疗卫生和医疗卫生产品种族利用的实施方案”
    +“1.公司的财务状况。2.公司的财务状况。3.公司的财务状况”
    +“lesión的valoración和medición.4.世界安提瓜运动的历史演变过程。”
    +“5.准备工作的重要性。6.解决问题的能力。7.生产的多个军火库”
    +“heridas公司的战略。8.heridas公司的产品和资产。9.las UPP prevención de las UPP公司的重要价值。”
    +“10.造口区的施工和施工。11.血管成分的下部结构的差异和施工。”
    +“12.社区社区和社区社区社区”,
    {Dirigidoa:“asdlkasjdlkajsd asdasdasd”}
    ];                      
    var doc=jsPDF(“p”、“pt”、“a4”);
    文档自动表(列、行、{
    斯塔蒂:错,
    主题:“网格”,
    //tableWidth:'自动',
    columnWidth:'换行',
    showHeader:“everyPage”,
    专栏风格:{
    0:{columnWidth:'100'}
    },
    headerStyles:{theme:'grid'},
    样式:{overflow:'linebreak',columnWidth:'100',font:'arial',fontSize:10,cellPadding:4,overflowColumns:'linebreak'},
    });
    doc.save('table.pdf');
    });