我正在尝试使用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');
});
我得到的结果如下:
在生成的PDF中可以看到的问题如下:
该想法是动态加载行,以便字段的文本长度可以变化,因此我无法为单元格设置固定宽度。
我该如何解决这些问题?
答案 0 :(得分:0)
更改此行
样式:{溢出:“换行符”,columnWidth:“换行”,字体:“ arial”,fontSize:10,cellPadding:4,overflowColumns:“ linebreak”},
到
样式:{溢出:“换行符”,columnWidth:“ 100”,字体:“ arial”,fontSize:10,cellPadding:4,overflowColumns:“ linebreak”},
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/0.9.0rc1/jspdf.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.5/jspdf.debug.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf-autotable/2.3.0/jspdf.plugin.autotable.js"></script>
<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: '100', font: 'arial', fontSize: 10, cellPadding: 4, overflowColumns: 'linebreak'},
});
doc.save('table.pdf');
});
</script>