Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
En el ámbito del intercambio de documentos, el formato de documento portátil(PDF)de Adobe, desempeña un papel crucial en la preservación de la integridad de los contenidos ricos en texto y visualmente atractivos. Para acceder a un archivo PDF en línea suele ser necesario un programa específico. En el panorama digital actual, los archivos PDF se han vuelto indispensables para diversas publicaciones importantes. Muchas empresas confían en los archivos PDF para crear documentos y facturas profesionales. Además, los desarrolladores suelen aprovechar las bibliotecas de creación de PDF para satisfacer requisitos específicos de los clientes. El proceso de generación de PDF se ha agilizado con la llegada de las bibliotecas modernas. A la hora de seleccionar la biblioteca más adecuada para un proyecto que implique la generación de PDF, es esencial tener en cuenta factores como las capacidades de compilación, lectura y conversión, garantizando una integración perfecta y un rendimiento óptimo.
Consideremos, por ejemplo, el caso en el que queremos que el cliente pueda descargar e imprimir una copia de nuestra factura en PDF sin esfuerzo. Además, es crucial para nosotros mantener el diseño preciso de la factura y garantizar una calidad de impresión impecable.
En esta sección, profundizaremos en una serie de bibliotecas JavaScript de gran prestigio que destacan en la conversión y creación de documentos HTML a PDF, proporcionándonos herramientas versátiles para una generación y conversión de documentos eficiente y precisa.
PDFKit era una biblioteca PDF que fue una de las primeras en lanzarse al vasto ecosistema de bibliotecas JavaScript. Su popularidad ha crecido significativamente desde su lanzamiento inicial en 2012 y, a partir de 2021, sigue recibiendo actualizaciones periódicas.
Gracias a Webpack, PDFKit es compatible tanto con la biblioteca Node como con los navegadores web, y admite fuentes personalizadas e incrustación de imágenes.
Sin embargo, como veremos en la comparación, algunas bibliotecas PDF son en realidad envoltorios de PDFKit y quizás un poco más fáciles de usar que PDFKit.
No hay ninguna API de alto nivel disponible para PDFKit. La documentación también suele ser difícil. Como es de esperar, hay que acostumbrarse y es posible que la producción de archivos PDF con JavaScript no sea siempre la tarea más fácil.
// including the file system module
const fs = require('fs');
// create a document the same way as above
const Page = new PDFDocument;
// add your content to the document here, as usual
Page.text('Hello world!');
// get a blob when you're done
Page.pipe(fs.createWriteStream('Demo.pdf'));
Page.end();
A diferencia de PDFKit, que utiliza el método imperativo convencional para generar algo, pdfmake utiliza un enfoque declarativo. Como resultado, el uso de la biblioteca pdfmake hace que sea más fácil concentrarse en la funcionalidad prevista de la producción de PDF en lugar de perder el tiempo enseñando a la biblioteca cómo lograr un determinado resultado.
Es fundamental tener en cuenta que, aunque algunas soluciones puedan parecer prometedoras, es posible que no sean perfectas. Un ejemplo de ello es la integración de fuentes personalizadas con pdfmake cuando se utiliza Webpack, que puede dar lugar a problemas. Lamentablemente, la documentación disponible en línea sobre este problema específico es limitada. Sin embargo, si no utiliza Webpack, puede clonar fácilmente el repositorio Git y ejecutar el script de incrustación de fuentes para superar cualquier posible obstáculo asociado a la integración de fuentes personalizadas.
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.56/pdfmake.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.56/vfs_fonts.js"></script>
</head>
<body>
<script type="text/javascript">
function CreatePdf() {
var doc = {
content: [
{text:"Hello world"}
],
defaultStyle: {
}
};
pdfMake.createPdf(doc).print();
}
</script>
<button onclick="CreatePdf()">Print pdf</button>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.56/pdfmake.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.56/vfs_fonts.js"></script>
</head>
<body>
<script type="text/javascript">
function CreatePdf() {
var doc = {
content: [
{text:"Hello world"}
],
defaultStyle: {
}
};
pdfMake.createPdf(doc).print();
}
</script>
<button onclick="CreatePdf()">Print pdf</button>
</body>
</html>
IronPDF se creó para facilitar a los desarrolladores la creación, exploración y edición de documentos PDF. Funciona como un potente conversor de PDF y ofrece una API base para crear, editar y procesar archivos PDF.
IronPDF for Node.js simplifica el proceso de creación y personalización de documentos PDF mediante programación. Desarrollado por Iron Software, proveedor de confianza de bibliotecas de procesamiento de documentos de alto rendimiento, IronPDF ofrece una solución robusta para la generación de PDF en entornos Node.js. Se integra a la perfección con proyectos Node.js, proporcionando a los desarrolladores potentes herramientas para generar, formatear y editar PDF con facilidad.
La biblioteca IronPDF tiene una amplia gama de funciones, como la posibilidad de dividir y combinar páginas en documentos PDF nuevos o existentes, leer y editar archivos PDF existentes, extraer imágenes de archivos PDF, añadir texto, gráficos, marcas de libro, marcas de agua, encabezados y pies de página a archivos PDF, todo ello sin necesidad de Acrobat Reader. A partir de archivos CSS y CSS media se pueden producir documentos PDF. IronPDF permite a los usuarios crear, cargar y actualizar formularios PDF nuevos y preexistentes.
Características principales de IronPDF for Node.js:
Completo conjunto de funciones: Con más de 50 funciones para crear, dar formato y editar documentos PDF, IronPDF ofrece una solución completa para todas las tareas relacionadas con PDF. Desde la generación básica de documentos hasta la personalización y seguridad avanzadas, IronPDF ofrece una amplia gama de funciones para satisfacer las necesidades de los desarrolladores.
El código siguiente muestra cómo utilizarJavaScript para renderizar HTML en un archivo PDF perfecto:
import {PdfDocument} from "@ironsoftware/ironpdf";
(async () => {
// Define the JavaScript code to change text color to red
const htmlWithJavaScript = `<h1>This is HTML</h1>
<script>
document.write('<h1>This is JavaScript</h1>');
window.ironpdf.notifyRender();
</script>`;
// Create rendering options object
const renderOptions = {
enableJavaScript: true,
};
// Render HTML content to a PDF
const pdf = await PdfDocument.fromHtml(htmlWithJavaScript, { renderOptions });
// Save the PDF with the executed JavaScript
await pdf.saveAs("javascript-in-html.pdf");
})();
También puede ejecutarJavaScript personalizado que modifica sin esfuerzo la apariencia del contenido HTML:
import {PdfDocument} from "@ironsoftware/ironpdf";
(async () => {
// Define the JavaScript code to change text color to red
const javascriptCode = "document.querySelectorAll('h1').forEach(function(el){el.style.color='red';})";
// Create rendering options object
const renderOptions = {
enableJavaScript: true,
javascript: javascriptCode,
};
// HTML content to be rendered
const htmlContent = "<h1>Happy New Year!</h1>";
// Render HTML content to a PDF
const pdf = await PdfDocument.fromHtml(htmlContent, { renderOptions: renderOptions });
// Save the PDF with the executed JavaScript
await pdf.saveAs("executed_js.pdf");
})();
Cuando hagamos clic en el botón de descarga, se descargará el archivo PDF como se muestra en la página PDF de la imagen anterior. El archivo PDF creado será como el que se muestra a continuación.
Encontrará tutoriales más detallados enTutorial de creación de PDF en C# de IronPDF.
Cabe mencionar que cuando es utilizado por otros, el código JavaScript mostrado arriba tiene el potencial de uso indebido y problemas de seguridad. Es fundamental tener en cuenta peligros como el acceso no autorizado y las vulnerabilidades de seguridad de los datos al colocar dicho código en una página o sitio web. Además, también es importante tener en cuenta la necesidad de dar soporte a navegadores obsoletos que podrían no disponer de todas las funciones necesarias y los problemas de compatibilidad con diversos sistemas y navegadores.
IronPDF no sólo está disponible para Node.js, sino también para otras plataformas populares como.NET, JavayPython. Esta disponibilidad multiplataforma garantiza coherencia y flexibilidad a los desarrolladores que trabajan con diferentes pilas tecnológicas. Gracias a su amplio conjunto de funciones, su perfecta integración y su sólido rendimiento, IronPDF es una valiosa herramienta para los desarrolladores que buscan agilizar la generación de PDF en sus proyectos Node.js.
Para dar cabida a las distintas demandas de los desarrolladores, la biblioteca ofrece diversas opciones de licencia, entre las que se incluyen unprueba gratuita licencia y desarrollador adicionallicencias que están a la venta. El paquete $749 Lite incluye una licencia permanente, una garantía de devolución del dinero de 30 días, un año de soporte de software y opciones de actualización. No hay más gastos aparte de la compra inicial.
9 productos API .NET para sus documentos de oficina