JavaScript en HTML a PDF
IronPDF permite a los usuarios crear archivos PDF a partir de contenido HTML, pero no solo es contenido HTML puro lo que se puede convertir a PDF, también puede convertir HTML con CSS y JavaScript personalizados. El uso de JavaScript dentro del contenido HTML, por ejemplo, permite que activos como imágenes se incrusten directamente dentro de la cadena HTML en lugar de cargarlos como activos externos. Todo lo que necesitas para lograr esto es la clase ChromePdfRenderer
y su propiedad RenderingOptions
.
pasos para renderizar HTML con JavaScript a PDF en C#
const string htmlWithJavaScript = "...."
var renderer = new ChromePdfRenderer();
```csharp renderer.RenderingOptions.EnableJavaScript = true; ```
renderer.RenderingOptions.WaitFor.JavaScript();
var pdfJavaScript = renderer.RenderHtmlAsPdf(htmlConJavaScript);
Dentro de la variable de cadena, hemos creado una cadena HTML que incluye el JavaScript <script>Etiqueta
script`, que contendrá el código JavaScript que se utilizará para crear nuestro PDF. El uso de la etiqueta de script significa que hemos indicado qué sección de la cadena es JavaScript, la cual se habilitará más adelante utilizando la propiedad RenderingOptions. Con esto, puedes incrustar imágenes, mantener la interactividad en el PDF renderizado y más.
Con `new ChromePdfRenderer()Creamos una nueva instancia de la clase ChromePdfRenderer, que controla la renderización de contenido HTML a PDF. Con esta clase, puede estar seguro de que sus archivos PDF renderizados saldrán perfectos píxel a píxel, junto con cualquier contenido personalizado de JavaScript o CSS mantenido en el resultado final.
A continuación, utilice la propiedad RenderingOptions
dentro de la clase ChromePdfRenderer para habilitar la ejecución del JavaScript antes de que se renderice el nuevo PDF. La línea RenderingOptions.WaitFor
asegura que el programa espere a que el JavaScript termine de ejecutarse antes de continuar con el proceso de renderización. La renderización comenzará una vez que el código JavaScript ejecute window.ironpdf.notifyRender
()` método. La propiedad RenderingOptions se asigna a la instancia de ChromePdfRenderer que creamos, de modo que las opciones se utilizarán para cualquier PDF creado con este renderizador.
El renderer.RenderHtmlAsPdf(...)
método maneja la representación real del documento PDF. Al pasar la cadena HTML con JavaScript a este método, podemos renderizarla como un PDF de alta calidad que contiene todos los elementos HTML y JavaScript. Esto se guarda en un nuevo objeto PdfDocument
que almacenará el PDF recién renderizado, el cual en este caso se llama pdfJavaScript. Finalmente, podemos guardar este nuevo PDF utilizando el método SaveAs
. Haga clic aquí para ver la Guía de Cómo Hacerlo, incluidos ejemplos, código de muestra y archivos.