【问题标题】:How to export an Array to PDF using jsPDF?如何使用 jsPDF 将数组导出为 PDF?
【发布时间】:2021-12-27 02:47:30
【问题描述】:

第一次使用 jsPDF。

我正在尝试通过 PDF 导出一些数据,但是当我尝试导出数组时,它给了我一个错误。我假设您使用doc.table 导出数组,因为我找不到任何文档,stackoverflow 中有一个标签用于提问,但也没有找到任何有相同问题的人。

这是我目前所拥有的

const generatePDF = () => {
      var doc = new jsPDF('landscape', 'px', 'a4', 'false');
      doc.addImage(AIBLogo, 'PNG', 250,10,100,100)

      doc.setFont('Helvertica', "bold")
      doc.text(60,150, "Informacion del Pedido");
      
      doc.setFont('Helvertica', "Normal")
      doc.text(60,170, "Estado del Pago: "+estadoDePago)
      doc.text(60,190, "Estado de Disponibilidad: "+estadoDeDisponibilidad)
      doc.text(60,210, "Total del Pedido: "+total)
      doc.text(60,230, "Total Pagado: "+totalPagado)

      doc.setFont('Helvertica', "bold")
      doc.text(360,150, "Informacion del Estudiante");

      doc.setFont('Helvertica', "Normal")
      doc.text(360,170, "Nombre del Estudiante: "+nombre)
      doc.text(360,190, "Escuela: "+escuela)
      doc.text(360,210, "Estado del Pago: "+grado)
      doc.text(360,240, "Direccion de Entrega: Retirar en institución")

      doc.table(100,100, librosData)
      
      doc.save(id+".pdf")
    }

不包括它打印出来的表格位:

我想在所有这些信息之后添加数据表,如果超出范围,我想创建新页面,因为表最多可以包含 20 个项目。

更新 我尝试了以下方法,但没有从这里得到它:StackOverflow Answer

var col = ["Descripcion", "Tipo", "Editorial","Precio"]
  row = []
  
  for (let i = 0; i < librosData.length; i++){
    var temp = [librosData[i].descripcion, librosData[i].tipo, librosData[i].editorial, librosData[i].precio];
    row.push(temp)
 }
  
 doc.autoTable(col,row, {startY:380});
 doc.save(id+".pdf")

我知道所有数据都是正确的,这就是该行的打印方式:

感谢任何帮助或文档。

最终更新 解决自动表不是功能的问题 Solution: StackOverflow

【问题讨论】:

    标签: javascript reactjs export jspdf export-to-pdf


    【解决方案1】:

    最后做表我推荐这个:

    做表:How to export a table with jsPDF

    修复兼容性:autoTable is not a function

    修复"deprecated autoTable initiation"

    通过以下方式初始化您的 autoTable

    import autoTable from 'jspdf-autotable'
    
    autoTable(doc, {
            head: [col],
            body: row
          })
    

    【讨论】:

      猜你喜欢
      • 2013-11-17
      • 1970-01-01
      • 1970-01-01
      • 2014-05-26
      • 1970-01-01
      • 1970-01-01
      • 2018-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多