Estoy usando html2pdf para convertir una página html en un archivo PDF y descargarlo. Todo funciona bien en términos de conversión y el archivo PDF se descarga con éxito, pero al hacer clic en un botón para generar el archivo ocurre un comportamiento extraño, la interfaz de usuario cambia por un segundo (los colores, el tamaño y la fuente del texto de los elementos cambian como se muestra en los pies de foto adjuntos)
secuencia de comandos html2pdf:
var opt = { pagebreak : { after : ['.Card'] }, margin: 1, filename: 'qrCodes.pdf', image: { type: 'png', quality: 0.98 }, html2canvas: { scale: 2 }, jsPDF: { unit: 'pt', format: 'letter', orientation: 'portrait' } }; html2pdf().from(myDocument).set(opt).save();Estado normal de la interfaz de usuario: Imagen del estado normal de la interfaz de usuario Al generar el PDF: Imagen del comportamiento extraño de la interfaz de usuario Al generar el PDF
Este problema me vuelve loco, ¿alguna solución?
El problema se debe al hecho de que JavaScript tiene un solo subproceso, por lo que este tipo de procesos deben implementarse en subprocesos separados a través de los trabajadores del servicio, por ejemplo. En realidad, este problema se abrió pero no se resolvió en html2pdf: el procesamiento de html2pdf congela la interfaz de usuario
o como solución alternativa, puede iniciar el proceso de conversión en un componente separado para que no afecte la interfaz de usuario actual.