Tengo una página web en la que una cantidad considerable del contenido se crea dinámicamente (jquery ajax, etc.) y tengo el requisito de presentar una versión imprimible de la misma.
Me estoy encontrando con todos los problemas habituales de html/impresión, que probablemente puedo (dar) de ronda, pero me hizo pensar: ¿hay alguna manera de tomar el DOM y generar un PDF a partir de él utilizando javascript Es probablemente una pregunta un poco tonta, suena un poco complicado, y no estoy muy seguro de que, incluso si pudiera crear un archivo PDF usando JavaScript, cómo lo presentaría al usuario.
¿Qué piensa la gente?Crear PDF imprimible desde html dom
Respuesta
var doc = new jsPDF();
doc.text(20, 20, 'Hello world!');
doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.');
doc.addPage();
doc.text(20, 20, 'Do you like that?');
// Output as Data URI
doc.output('datauri');
https://parall.ax/products/jspdf, creo que esto le ayudará a
This es una pregunta que hice hace unos días sobre un tipo similar de sitio/problema.
Mi solución ha sido: (1) en Javascript, establecer una cookie y llamar a un script PHP usando location.href = ...;
(no AJAX) y luego (2) tener el script PHP accediendo a la cookie para determinar el tipo de informe requerido , y luego repetir un formulario que solicita al usuario descargar un archivo usando los encabezados correctos. El PHP era algo como lo siguiente:
header("Content-type: application/vnd.ms-word");
header("Content-Disposition: attachment;Filename=test.doc");
echo "<html>";
echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Windows-1252\">";
echo "<body>";
echo "Testing-2-3!";
echo "</body>";
echo "</html>";
Resultó imposible para conseguir lo que quería que sucediera el uso de AJAX AJAX porque nunca se le permite solicitar al usuario.
Puede utilizar este método para hacer algo similar, pero en su caso generaría un archivo PDF en vez de .doc (o descargar uno que ya está preparado).
Una ventaja de este método, por supuesto, es que no implica recargas de página.
Hmm, interesante. Voy a jugar con esta idea. Tengo un problema porque tengo algunos gráficos en la página que están compilados en javascript (zingcharts), por lo que tendría que volver a colocar las imágenes en el servidor para crear un PDF (o regenerar los gráficos en php). En última instancia, estoy tratando de ser flojo: tengo una buena representación de lo que quiero en la pantalla (html) en el cliente. Simplemente no puedo lograr que todos los navegadores jueguen a la pelota cuando se trata de imprimir. – Jonny
Voy a usar las dos respuestas sugeridas. Gracias por tu ayuda. – Jonny
- 1. HTML a PDF A4 tamaño imprimible
- 2. Crear pdf desde un archivo html persa por ITextSharp
- 3. crear archivo PDF desde android
- 4. Generación PDF desde HTML (componente para .NET)
- 5. ¿Documento HTML a PDF?
- 6. ¿Cómo se depura CSS imprimible?
- 7. Crear PDF desde CSV en iPhone
- 8. Necesito crear PDF desde bytearray (Java)
- 9. ¿Generar PDF desde ASP.NET desde contenido HTML/CSS sin formato?
- 10. cómo crear XPATH para un elemento HTML DOM?
- 11. Renderizar imagen incrustada en PDF usando Flying-Saucer desde html
- 12. .NET HTML DOM Parser?
- 13. PHP HTML DOM analizador
- 14. C# convirtiendo pdf a html
- 15. cómo crear PDF de varias páginas de HTML
- 16. Añadir cadena html a DOM como elemento
- 17. Generando PDF desde OpenXml
- 18. Crear un DOM NodeList
- 19. Creando algo imprimible en C#
- 20. Generar PDF desde un archivo html en iPhone
- 21. Generación de PDF desde la página HTML para Rails
- 22. ¿Cómo crear el objeto HTML HTML HtmlUnit desde String?
- 23. Enviar formulario HTML a PDF
- 24. convertir HTML a PDF
- 25. Convertir PDF a HTML
- 26. HTML dinámico a PDF
- 27. Convertir PDF a HTML
- 28. HTML: force PDF download
- 29. HTML y CSS a PDF en JavaScript
- 30. Diferencia entre HTML y DOM
Hola, gracias, se ve muy bien. Tenía la esperanza de poder salirse con la suya básicamente tomando lo que ya estaba construido en el DOM y simplemente dando algunos detalles más (tamaño de página y similares). – Jonny
@Moo Solo mira si esto te ayuda, [link] http://code.google.com/p/dompdf/ –
@Moo [link] http://stackoverflow.com/questions/1686280/convert-html-having -javascript-to-pdf-using-java-javascript –