iTextSharp AGPL vs IronPDF en ASP.NET MVC: Riesgo VeriFactu y TicketBAI para ISVs en España
Dos problemas de diseño aparecen constantemente en los flujos de trabajo de documentos. El contenido amplio, como tablas financieras, paneles de control y cronogramas de proyectos, se corta o se ajusta cuando se fuerza a modo retrato. Y las páginas escaneadas o importadas a menudo llegan de lado o al revés. IronPDF resuelve ambos en C#, configurando la orientación mientras se renderiza un PDF y rotando páginas en documentos que ya existen.
El problema empresarial
Un sistema de reporte emite una tabla al estilo de hoja de cálculo que desborda una página en retrato. Un proceso de ingesta de documentos recibe escaneos que están rotados de forma incorrecta. Un informe final ensamblado de varias fuentes tiene páginas en ángulos inconsistentes. Cada caso deja a los usuarios entrecerrando los ojos, desplazándose de lado o rotando páginas manualmente en un visor. El objetivo es un diseño correcto y consistente producido automáticamente.
Configuración de la orientación en el momento de renderización
La orientación se elige al generar un PDF desde otro formato, a través de la propiedad PaperOrientation. Paisaje da al contenido amplio el espacio horizontal que necesita.
using IronPdf;
using IronPdf.Rendering;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
PdfDocument pdf = renderer.RenderHtmlAsPdf(reportHtml);
pdf.SaveAs("report-landscape.pdf");
Rotación de páginas en documentos existentes
La rotación funciona en documentos ya creados, lo que lo convierte en la herramienta para corregir escaneos o normalizar archivos fusionados. IronPDF ofrece cuatro ángulos fijos a través del enum PdfPageRotation y métodos para una página, un conjunto seleccionado o todas las páginas.
PdfDocument pdf = PdfDocument.FromFile("scanned.pdf");
// Correct every page in a uniformly misrotated batch
pdf.SetAllPageRotations(PdfPageRotation.Clockwise90);
// Fix a single page
pdf.SetPageRotation(1, PdfPageRotation.Clockwise180);
// Fix a selected set of pages
pdf.SetPageRotations(new List<int> { 0, 3 }, PdfPageRotation.Clockwise270);
pdf.SaveAs("corrected.pdf");
GetPageRotation lee el ángulo actual de cualquier página, lo que ayuda al normalizar documentos fusionados de múltiples fuentes.
PdfPageRotation rotation = pdf.GetPageRotation(1);
Puntos a planificar
- Tiempo de renderizado versus archivos existentes:
PaperOrientationse aplica únicamente al generar un PDF desde otro formato. La rotación se aplica a PDFs que ya existen. Mantener los dos separados evita el error más común. - Rotación de toda la página: La rotación mueve texto, imágenes y anotaciones juntas, lo que difiere de rotar elementos de texto individuales.
- Indexación basada en cero:
SetPageRotation(1, ...)apunta a la segunda página. - Conservar originales: Ahorra la salida rotada a un nuevo nombre de archivo, y utiliza
SetPageRotationspara múltiples páginas para mejor rendimiento.
Resultado
Con la orientación establecida durante la renderización y la rotación aplicada posteriormente, los equipos producen informes que se ajustan a su contenido y pipelines de ingesta que almacenan documentos correctamente orientados, sin limpieza manual. Los detalles completos del método están en la guía de orientación y rotación de páginas.

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 estructurados y visualmente atractivos.