Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

496
Views
¿Cómo agregar contenido html a cada página de jsPDF?

Estoy tratando de convertir mi página html a pdf usando jsPDF. Esencialmente, estoy usando el método html de jsPDF, dándole una fuente y opciones y luego, en la función de devolución de llamada, guardaría el documento. Pero tengo un problema cuando se trata de dividir el documento html único en varios divs y guardar cada div en una página. Estoy probando el siguiente código y deja todas las páginas en blanco.

mi html parece

 <div class = "resultpage" > <div class = "print-section-1"> //some content </div> <div class = "print-section-2"> //some content again </div> <div class = "print-section-3"> //content... </div> </div>

Mi js se parece a:

 window.jsPDF = window.jspdf.jsPDF; let doc = new jsPDF({ orientation : "portrait", unit : 'px', format : 'a4', hotfixes : ["px_scaling"], putOnlyUsedFonts : true }) doc.html($(".prints-section-1")[0], { x: 10, y : 10, margin : [50, 200, 50, 200], autoPaging : "text" }) doc.addPage() doc.html($(".print-section-2")[0], { x: 10, y : 10, margin : [50, 200, 50, 200], autoPaging : "text" }) doc.addPage() doc.html($(".print-section-3")[0], { x: 10, y : 10, margin : [50, 200, 50, 200], autoPaging : "text" }) doc.save("test")

Esto deja todas las páginas vacías.

Si modifico el js, para tener un encadenamiento de devoluciones de llamada como a continuación, puedo imprimir el último div (print-side-2 en este caso), pero las páginas anteriores están en blanco.

 doc.html($(".print-section-1")[0], { callback : function(doc) { doc.addPage(); doc.html($(".print-section-2")[0], { callback : function(doc) { doc.save("test.pdf") } x: 10, y : 10, margin : [50, 200, 50, 200], autoPaging : "text" }) } x: 10, y : 10, margin : [50, 200, 50, 200], autoPaging : "text" })

¿Alguien puede señalar lo que estoy haciendo mal? Busqué soluciones, pero muchas usan métodos obsoletos como addFromHTtml, y algunos sugirieron usar saltos de línea como "<!--ADD_PAGE>" _ y style = "page-break-before: always", pero ambos no funcionan. Revisé la documentación y no ha sido un gran apoyo. Por favor, ayúdame.

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!