Saltar al contenido

Agregar pie de página a pdf usando jsPDF

Hemos estado buscado en diferentes foros y de esta forma traerte la solución a tu problema, si tienes alguna duda deja la pregunta y te responderemos con gusto, porque estamos para servirte.

Solución:

Tienes que implementarlo tú mismo. Puedes hacer algo como esto:

var doc = new jsPDF();
doc.page=1; // use this as a counter.

function footer() 
    doc.text(150,285, 'page ' + doc.page); //print number bottom right
    doc.page ++;
;

// and call footer() after each doc.addPage()

Sé que esta publicación es antigua, pero voy a ofrecer otra solución. Primero defina su cantidad total de páginas. Hay varias formas de determinar esto, así que no entraré en eso.

        var doc = new jsPDF('p', 'pt', 'letter');
        doc.page = 1; // use this as a counter.
        var totalPages = 10; // define total amount of pages
        // HEADER
        doc.setFontSize(20);//optional
        doc.setTextColor(40);//optional
        doc.setFontStyle('normal');//optional
        doc.text("Report", 50, 22);// set your margins
        // FOOTER
        var str = "Page " + doc.page  + " of " +  totalPages;
        doc.setFontSize(10);// optional
        doc.text(str, 50, doc.internal.pageSize.height - 10);//key is the interal pageSize function


        // Add Page content
        .....


        //Add new page and increase page count
        doc.addPage();
        doc.page ++;
        //Begin process all over again.

Esto funciona bien en un bucle, ya que puede configurar el número de páginas tomando su array.length + 1 (ya que está basado en cero).

¡Stephen Collins es la mejor respuesta! Funciona bien con el complemento jspdf-autotable.

¡Con esto se hace después de agregar todo al documento, por lo que podemos usar fácilmente el número total de páginas!

Agregue algo de estilo a la respuesta de Stephen Collins: “página x del total

const addFooters = doc => 
  const pageCount = doc.internal.getNumberOfPages()

  doc.setFont('helvetica', 'italic')
  doc.setFontSize(8)
  for (var i = 1; i <= pageCount; i++) 
    doc.setPage(i)
    doc.text('Page ' + String(i) + ' of ' + String(pageCount), doc.internal.pageSize.width / 2, 287, 
      align: 'center'
    )
  



let doc = new jsPDF()

doc.text(...)
doc.autoTable(...)
addFooters(doc)
doc.save()

Aquí puedes ver las reseñas y valoraciones de los lectores

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *