Estoy usando Cordova-electron con ReactJS para crear una aplicación de escritorio. necesitamos implementar la vista previa de impresión en nuestra aplicación en lugar de mostrar el cuadro de diálogo predeterminado del sistema para imprimir. La comunidad dice que no hay una forma predeterminada de lograr esto en electrones, debemos hacerlo manualmente. Utilicé html2pdf.js, jsPDF para generar PDF desde el lado del cliente, pero ninguno de estos proporciona el PDF exacto que necesitamos, todos tienen algunos problemas de alineación, problemas de fuente y problemas de salto de página, etc. Por favor, sugiérame una solución adecuada. para este problema.
Adjunto código para generar PDF usando html2pdf.js que he usado
var opt = { margin: 1, filename: 'myfile.pdf', image: { type: 'jpeg', quality: 0.98 }, html2canvas: { scale: 1, logging: true, width: '1024', dpi: 100, letterRendering: true }, jsPDF: { unit: 'mm', orientation: 'portrait', format: 'a4' }, pagebreak: { after: '.page-break' } } var worker = html2pdf().set(opt).from(componentRef.current).to('pdf').output('blob').then(d => { console.log('pdf-file', d); var blob = new Blob([d], { type: "application/pdf" }); console.log('Blob-pdf', blob); var url = URL.createObjectURL(blob); var printWindow = window.open(url, '', 'width=800,height=500'); }).catch(d => { console.error('error in PDF generation', d); })Desafortunadamente, el electrón no tiene una vista previa de impresión, puede usar nw.js en lugar del electrón si desea una vista previa de impresión