Cómo convertir HTML a PDF con CSS responsive usando C#

Cómo usar CSS con HTML en C# para crear PDF con capacidad de respuesta

This article was translated from English: Does it need improvement?
Translated
View the article in English

El tipo de medio CSS 'screen' está destinado principalmente para la visualización en pantallas de computadoras y dispositivos similares. Cuando se definen estilos para el tipo de medio 'screen', afectan cómo se presenta el contenido web en las pantallas, enfatizando el diseño visual y la interactividad.

En contraste, el tipo de medio CSS 'print' está diseñado para impresión. Determina cómo aparecerá la página web cuando se imprima, con un enfoque en la optimización del contenido para la página impresa. Esta optimización puede incluir el ajuste de tamaños de fuente, márgenes y la eliminación o ocultamiento de elementos que no son relevantes o necesarios al imprimir.

como-título:2(Inicio rápido: Generar PDFs con HTML y CSS responsivos)

Convierta su HTML con CSS responsivo a un PDF pulido usando IronPDF sin esfuerzo. Con solo unas pocas líneas de código, los desarrolladores pueden asegurarse de que sus PDFs se rendericen perfectamente en todos los dispositivos, manteniendo la integridad de los estilos de pantalla e impresión. Esta guía rápida demuestra cómo usar IronPDF para lograr una salida profesional de PDF a partir de su contenido HTML existente, agilizando el proceso para obtener resultados rápidos y precisos.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronPDF con el gestor de paquetes NuGet

    PM > Install-Package IronPdf

  2. Copie y ejecute este fragmento de código.

    new IronPdf.ChromePdfRenderer { RenderingOptions = { CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print } }
        .RenderUrlAsPdf("https://example.com")
        .SaveAs("responsive.pdf");
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronPDF en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


Tipos de CSS para pantalla e impresión (CSS3)

IronPDF genera PDFs a partir de HTML en C# y puede renderizar fácilmente una hoja de estilos de pantalla a un PDF por defecto. Esto es conveniente porque las hojas de estilo de impresión suelen estar menos documentadas, usadas o desarrolladas en comparación con sus contrapartes de pantalla.

CSS3 permite que ciertos estilos CSS se rendericen exclusivamente en documentos impresos, mientras que otros están destinados para navegadores web. IronPDF se puede programar para trabajar con ambos.

Cree y aplique una hoja de estilo de impresión a su HTML: Aprenda cómo crear y aplicar una hoja de estilo de impresión perfecta..

Es muy difícil decir cuál tipo de medio CSS es mejor ya que cada tipo se dirige a diferentes casos de uso. Vale la pena probar cada uno mediante ensayo y error para ver cuál es adecuado para sus requisitos.

Ejemplo de Impresión 1 Ejemplo de Pantalla 1


Repetir encabezados de tabla

Al tratar con tablas HTML que abarcan múltiples páginas, configure la propiedad CssMediaType a PdfCssMediaType.Print. Esto asegura que el encabezado de la tabla se repita en la parte superior de cada página extendida. En contraste, PdfCssMediaType.Screen instruye a Chrome para imprimir los encabezados solo una vez.

Para asegurarse de que Chrome detecte el encabezado de la tabla, este debe estar encerrado en una etiqueta <thead>. Let's render the 'tableHeader.html example of repeating table headers' HTML file to PDF to see the effect.

:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-responsive-css-table-header.cs
using IronPdf;
using IronPdf.Rendering;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Change the paper size to small
renderer.RenderingOptions.SetCustomPaperSizeinPixelsOrPoints(600, 400);

// Choose screen or print CSS media
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableHeader.html");

pdf.SaveAs("tableHeader.pdf");
Imports IronPdf
Imports IronPdf.Rendering

Private renderer As New ChromePdfRenderer()

' Change the paper size to small
renderer.RenderingOptions.SetCustomPaperSizeinPixelsOrPoints(600, 400)

' Choose screen or print CSS media
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print

' Render HTML to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlFileAsPdf("tableHeader.html")

pdf.SaveAs("tableHeader.pdf")
$vbLabelText   $csharpLabel

Preguntas Frecuentes

¿Cómo puedo convertir HTML a PDF con diseño adaptable?

Puedes convertir HTML a PDF con diseño adaptable usando IronPDF descargando primero la biblioteca C# de IronPDF. Luego, prepara tu archivo HTML, especifica el tipo de medio CSS apropiado y configura las dimensiones del viewport para asegurar que el PDF sea adaptable en distintos dispositivos.

¿Cuál es la diferencia entre los tipos de medios CSS 'screen' y 'print'?

El tipo de medio CSS 'screen' se usa para mostrar contenido en pantallas digitales, centrándose en el diseño visual y la interactividad. En contraste, el tipo de medio 'print' optimiza el contenido para materiales impresos ajustando elementos como tamaños de fuente y márgenes, haciéndolo adecuado para impresiones físicas.

¿Cómo aseguras que los encabezados de tabla se repitan en cada página de un PDF?

Para asegurar que los encabezados de tabla se repitan en cada página de un PDF, configura la propiedad CssMediaType a PdfCssMediaType.Print y encierra el encabezado de la tabla en una etiqueta <thead>. Esto asegura una representación consistente del encabezado en múltiples páginas.

¿Puede IronPDF manejar tanto hojas de estilo para pantalla como para impresión?

Sí, IronPDF puede manejar tanto hojas de estilo para pantalla como para impresión. Permite renderizar PDFs a partir de HTML con cualquiera de los tipos de medio, asegurando flexibilidad dependiendo de si la salida está destinada para pantallas digitales o impresión.

¿Cuáles son los beneficios de usar una hoja de estilo para impresión al convertir HTML a PDF?

Una hoja de estilo para impresión es beneficiosa al convertir HTML a PDF ya que asegura que el contenido esté optimizado para la impresión. Esto incluye ajustes en los tamaños de fuente y márgenes, asegurando que el PDF esté correctamente formateado para impresiones físicas.

¿Cómo implementas CSS adaptable en un PDF usando una biblioteca C#?

Para implementar CSS adaptable en un PDF usando IronPDF, descarga la biblioteca C# de IronPDF, prepara tu contenido HTML, especifica el tipo de medio CSS deseado y ajusta las dimensiones del viewport para asegurar que el PDF se adapte a varios dispositivos.

¿Por qué es importante usar el tipo de medio CSS correcto para PDFs?

Usar el tipo de medio CSS correcto es importante para PDFs porque determina cómo se renderiza el contenido. El tipo de medio 'screen' es adecuado para pantallas digitales, mientras que el tipo de medio 'print' asegura que el contenido esté optimizado para papel, afectando elementos como el diseño y la legibilidad.

¿IronPDF es compatible con .NET 10? ¿Hay ventajas en utilizar la última versión?

Sí, IronPDF es compatible con .NET 10. Dado que .NET 10 es una versión con soporte a largo plazo (LTS) con importantes mejoras de rendimiento, tiempo de ejecución y SDK (incluyendo mejor integración JIT, aceleración de hardware y API HTTP y de serialización mejoradas), usar .NET 10 con IronPDF permite una generación de PDF más rápida y eficiente, además de estabilidad a largo plazo. ([devblogs.microsoft.com](https://devblogs.microsoft.com/dotnet/announcing-dotnet-10/?utm_source=openai))

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Nuget Descargas 16,493,056 | Version: 2025.11 recién lanzado