IRONSOFTWAREHOME

Iron Suite for .NET

10 .NET-Bibliotheken. Eine komplette Dokumenten-Suite.

IRONPDF
IRONWORD
IRONXL
IRONPPT
IRONOCR
IRONBARCODE
IRONQR
IRONPRINT
IRONZIP
IRONWEBSCRAPER
VERGLEICH

PdfiumViewer vs IronPDF: Leitfaden für einen technischen Vergleich

Curtis Chau
Curtis Chau
Updated: 28. Juni 2026

Wenn .NET-Entwickler Lösungen zur PDF-Erzeugung evaluieren, stellen Rotativaund IronPDF grundlegend verschiedene Ansätze mit unterschiedlichen architektonischen Grundlagen und Wartungspfaden dar. Rotativanutzt das wkhtmltopdf-Tool zur Konvertierung von HTML-Inhalten in das PDF-Format innerhalb von ASP.NET MVC-Anwendungen, während IronPDF eine moderne Chromium-basierte Rendering-Engine bietet, die mit allen .NET-Projekttypen kompatibel ist. In diesem technischen Vergleich werden beide Bibliotheken in den Dimensionen untersucht, die für professionelle Entwickler und Architekten bei der Entscheidung über die PDF-Erzeugung for .NET-Anwendungen im Jahr 2025 und darüber hinaus am wichtigsten sind.

Rotativaverstehen

Rotativa ist eine Open-Source-Bibliothek, die speziell für ASP.NET MVC-Anwendungen entwickelt wurde. Sie umschließt das Befehlszeilen-Tool wkhtmltopdf zur Konvertierung von HTML-Inhalten in das PDF-Format. Die Bibliothek bietet MVC-spezifische Action-Result-Typen wie ViewAsPdf und UrlAsPdf, die sich direkt in das MVC-Controller-Muster integrieren lassen.

Im Kern verwendet Rotativadie Qt WebKit 4.8 Rendering-Engine von wkhtmltopdf aus dem Jahr 2012. Das bedeutet, dass die Bibliothek keine modernen CSS-Funktionen wie Flexbox oder CSS Grid darstellen kann und dass die JavaScript-Ausführung unzuverlässig ist, da ES6+ nicht unterstützt wird.

Kritische Überlegung: Rotativawurde seit Jahren nicht mehr aktualisiert oder gewartet. Das zugrundeliegende wkhtmltopdf wurde im Dezember 2022 offiziell aufgegeben, und die Betreuer haben ausdrücklich erklärt, dass sie keine Sicherheitslücken beheben werden. Dazu gehört CVE-2022-35583, eine kritische Server-Side Request Forgery (SSRF)-Schwachstelle mit einem Schweregrad von 9.8/10.

IronPDF verstehen

IronPDF bietet eine moderne, Chromium-basierte Lösung zur PDF-Erzeugung for .NET-Anwendungen. Die Bibliothek funktioniert mit jedem .NET-Projekttyp, einschließlich ASP.NET MVC, Razor Pages, Blazor, minimalen APIs, Konsolenanwendungen und Desktop-Projekten.

Die Architektur von IronPDF trennt das HTML-Rendering von der PDF-Generierung und bietet Entwicklern mehr Flexibilität bei der Strukturierung ihrer Anwendungen. Die Klasse ChromePdfRenderer verarbeitet alle Konvertierungsoperationen mit umfassender Unterstützung für modernes CSS3, JavaScript ES6+ und async/await-Muster.

Vergleich Sicherheit

Die Sicherheitslage dieser Bibliotheken unterscheidet sich drastisch:

RisikoRotativaIronPDF
CVE-2022-35583 (SSRF)AngreifbarGeschützt
Lokaler DateizugriffAngreifbarSandboxed
Interner NetzwerkzugangAngreifbarEingeschränkt
Sicherheits-PatchesNiemals (aufgegeben)Regelmäßige Aktualisierungen
Aktive EntwicklungAufgegebenMonatliche Veröffentlichungen

Die Sicherheitslücke CVE-2022-35583 ermöglicht Angreifern den Zugriff auf interne Netzwerkressourcen, Cloud-Metadaten-Endpunkte und sensible Konfigurationen über manipulierte HTML-Inhalte. Da wkhtmltopdf nie gepatcht wird, bleibt jede Anwendung, die Rotativaverwendet, dauerhaft dieser kritischen Sicherheitslücke ausgesetzt.

Projektkompatibilität

Die größte Einschränkung von Rotativaist der ausschließliche Fokus auf ASP.NET MVC:

FeatureRotativaIronPDF
ASP.NET MVCJaJa
Razor-SeitenNicht unterstütztUnterstützt
BlazorNicht unterstütztUnterstützt
Minimal-APIsNicht unterstütztUnterstützt
KonsolenanwendungenNicht unterstütztUnterstützt
Desktop-AnwendungenNicht unterstütztUnterstützt

Rotativa wurde für ASP.NET MVC 5 und früher entwickelt und basiert auf dem Controller-Action-Result-Muster. Aufgrund dieser Architektur ist sie nicht für moderne .NET Core-Anwendungen geeignet, die Razor Pages, Blazor oder minimale APIs verwenden.

HTML zu PDF Konvertierung

Die Codemuster für die HTML-zu-PDF-Konvertierung zeigen grundlegende Unterschiede in der Architektur auf.

RotativaHTML-Konvertierung

Rotativa benötigt den MVC-Controller-Kontext und verwendet Action-Result-Muster:

// NuGet: Install-Package Rotativa.Core
using Microsoft.AspNetCore.Mvc;
using Rotativa.AspNetCore;
using System.Threading.Tasks;

namespace RotativaExample
{
    public class PdfController : Controller
    {
        public async Task<IActionResult> GeneratePdf()
        {
            var htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>";
            
            // Rotativarequires returning a ViewAsPdf result from MVC controller
            return new ViewAsPdf()
            {
                ViewName = "PdfView",
                PageSize = Rotativa.AspNetCore.Options.Size.A4
            };
        }
    }
}
C#

Der Ansatz von Rotativaverbindet die PDF-Erzeugung mit MVC-Ansichten und -Controllern. Das Action-Ergebnis ViewAsPdf rendert eine Razor-Ansicht und konvertiert sie zu PDF, kann jedoch keine rohen HTML-Strings direkt ohne eine Ansicht akzeptieren.

IronPDF HTML-Konvertierung

IronPDF bietet eine direkte HTML-String-Konvertierung, ohne dass ein MVC-Kontext erforderlich ist:

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

namespace IronPdfExample
{
    class Program
    {
        static void Main(string[] args)
        {
            var renderer = new ChromePdfRenderer();
            var htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>";
            
            var pdf = renderer.RenderHtmlAsPdf(htmlContent);
            pdf.SaveAs("output.pdf");
            
            Console.WriteLine("PDF generated successfully!");
        }
    }
}

Die Methode RenderHtmlAsPdf akzeptiert HTML-Inhalte direkt und ermöglicht die PDF-Erzeugung aus jedem Anwendungskontext - Konsolenanwendungen, Hintergrunddienste oder Webanwendungen jeder Art.

URL zu PDF Konvertierung

Die Konvertierung von Live-Webseiten in PDF zeigt, wie die einzelnen Bibliotheken mit Navigation und Rendering umgehen.

RotativaURL-Konvertierung

// NuGet: Install-Package Rotativa.Core
using Microsoft.AspNetCore.Mvc;
using Rotativa.AspNetCore;
using System.Threading.Tasks;

namespace RotativaExample
{
    public class UrlPdfController : Controller
    {
        public async Task<IActionResult> ConvertUrlToPdf()
        {
            // Rotativaworks within MVC framework and returns ActionResult
            return new UrlAsPdf("https://www.example.com")
            {
                FileName = "webpage.pdf",
                PageSize = Rotativa.AspNetCore.Options.Size.A4,
                PageOrientation = Rotativa.AspNetCore.Options.Orientation.Portrait
            };
        }
    }
}

Der Ergebnistyp UrlAsPdf von Rotativaerfordert den MVC-Controller-Kontext und gibt ein Action-Ergebnis zurück. Beachten Sie, dass das URL-Rendering durch wkhtmltopdf die SSRF-Schwachstelle offenlegt, wodurch Angreifer potenziell auf interne Netzwerkressourcen zugreifen können.

IronPDF URL-Konvertierung

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

namespace IronPdfExample
{
    class Program
    {
        static void Main(string[] args)
        {
            var renderer = new ChromePdfRenderer();
            
            var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
            pdf.SaveAs("webpage.pdf");
            
            Console.WriteLine("URL converted to PDF successfully!");
        }
    }
}

Die RenderUrlAsPdf-Methode von IronPDF arbeitet unabhängig von jedem Web-Framework und verfügt über eingebaute Sicherheitsbeschränkungen, die SSRF-Angriffe verhindern.

Kopf- und Fußzeilen Implementierung

Die Kopf- und Fußzeilen des Dokuments zeigen die wesentlichen Unterschiede im API-Design.

RotativaKopf- und Fußzeilen

Rotativa verwendet Befehlszeilenschalter, die als Zeichenketten übergeben werden:

// NuGet: Install-Package Rotativa.Core
using Microsoft.AspNetCore.Mvc;
using Rotativa.AspNetCore;
using Rotativa.AspNetCore.Options;
using System.Threading.Tasks;

namespace RotativaExample
{
    public class HeaderFooterController : Controller
    {
        public async Task<IActionResult> GeneratePdfWithHeaderFooter()
        {
            return new ViewAsPdf("Report")
            {
                PageSize = Size.A4,
                PageMargins = new Margins(20, 10, 20, 10),
                CustomSwitches = "--header-center \"Page Header\" --footer-center \"Page [page] of [toPage]\""
            };
        }
    }
}

Die Eigenschaft CustomSwitches übergibt rohe Befehlszeilenargumente an wkhtmltopdf. Bei diesem Ansatz fehlt es an Typsicherheit, IntelliSense-Unterstützung und Kompilierzeitüberprüfung. Fehler in der Switch-Syntax treten erst zur Laufzeit auf.

IronPDF-Kopf- und Fußzeilen

IronPDF bietet typisierte Eigenschaften für die Konfiguration von Kopf- und Fußzeilen:

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

namespace IronPdfExample
{
    class Program
    {
        static void Main(string[] args)
        {
            var renderer = new ChromePdfRenderer();
            
            renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
            {
                CenterText = "Page Header",
                DrawDividerLine = true
            };
            
            renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
            {
                CenterText = "Page {page} of {total-pages}",
                DrawDividerLine = true
            };
            
            var htmlContent = "<h1>Report Title</h1><p>Report content goes here.</p>";
            var pdf = renderer.RenderHtmlAsPdf(htmlContent);
            pdf.SaveAs("report.pdf");
            
            Console.WriteLine("PDF with headers and footers created successfully!");
        }
    }
}

Die Klasse TextHeaderFooter von IronPDF bietet IntelliSense-Unterstützung, Typüberprüfung bei der Kompilierung und eindeutige Eigenschaftsnamen. Die Platzhaltersyntax unterscheidet sich: Rotativaverwendet [page] und [toPage], während IronPDF{page} und {total-pages} verwendet.

Syntax-Referenz für Platzhalter

RotativaPlatzhalterIronPDF Platzhalter
[page]{page}
[topage]{total-pages}
[date]{date}
[time]{time}
[title]{html-title}
[sitepage]{url}

Merkmalsvergleichsmatrix

FeatureRotativaIronPDF
SicherheitKritische CVEs (ungepatched)Keine Schwachstellen
HTML-RenderingVeraltetes WebKit (2012)Modernes Chromium
CSS3Teilweise UnterstützungUnterstützt
Flexbox/GridNicht unterstütztUnterstützt
JavaScriptUnzuverlässigVollständig ES6+
ASP.NET CoreBegrenzte PortsNative Unterstützung
Razor-SeitenNicht unterstütztUnterstützt
BlazorNicht unterstütztUnterstützt
PDF-BearbeitungNicht verfügbarUnterstützt
Digitale SignaturenNicht verfügbarUnterstützt
PDF/A-KonformitätNicht verfügbarUnterstützt
Async/AwaitNur synchronVollständig asynchron
Aktive WartungAufgegebenWöchentliche Aktualisierungen

API-Mapping-Referenz

Teams, die eine Migration von Rotativaauf IronPDF prüfen, können sich auf diese Zuordnung gleichwertiger Operationen beziehen:

Rotativa-KlasseIronPDF-Äquivalent
ViewAsPdfChromePdfRenderer
ActionAsPdfChromePdfRenderer.RenderUrlAsPdf()
UrlAsPdfChromePdfRenderer.RenderUrlAsPdf()
Orientation enumPdfPaperOrientation enum
Size enumPdfPaperSize enum
MarginsRenderingOptions.Margin*
CustomSwitchesRenderingOptions.*

Das Threading-Problem

Rotativa erbt die Threading-Einschränkungen von wkhtmltopdf:

// Rotativa- Blocks the thread
public ActionResult GeneratePdf()
{
    return new ViewAsPdf("Report");
    // This blocks the request thread until PDF is complete
    // Poor scalability under load
}

IronPDF bietet vollständige asynchrone Unterstützung:

//IronPDF- Vollständig asynchronsupport
public async Task<IActionResult> GeneratePdf()
{
    var renderer = new ChromePdfRenderer();
    var pdf = await renderer.RenderHtmlAsPdfAsync(html);
    return File(pdf.BinaryData, "application/pdf");
    // Non-blocking, better scalability
}

Das Synchronous-Only-Muster in Rotativablockiert Anfrage-Threads, was die Skalierbarkeit der Anwendung unter Last verringert. Die asynchrone Unterstützung von IronPDF ermöglicht eine bessere Ressourcennutzung in Szenarien mit hohem Durchsatz.

Bereitstellungsüberlegungen

Rotativa erfordert die Verwaltung von wkhtmltopdf-Binärdateien in verschiedenen Einsatzumgebungen:

  • Verschiedene Binärdateien für x86/x64/Linux/Mac-Plattformen
  • Manuelle Konfiguration der PATH-Umgebung
  • Sicherheitsschwachstellen in allen Binärversionen
  • Die Docker-Images müssen eine wkhtmltopdf-Installation enthalten

IronPDF vereinfacht die Bereitstellung durch NuGet-Paketierung ohne externe Binärverwaltung.

Wenn Teams eine Rotativa-Migration in Betracht ziehen

Mehrere Faktoren veranlassen Entwicklungsteams, Alternativen zu Rotativazu prüfen:

Sicherheitsanforderungen werden kritisch, wenn Schwachstellen-Scanner CVE-2022-35583 anzeigen. Da wkhtmltopdf niemals gepatcht werden wird, müssen Organisationen, die Sicherheitsaudits oder Compliance-Anforderungen unterliegen, von Rotativaweggehen.

Die moderne Einführung von .NET führt zu Inkompatibilität, wenn Teams zu Razor Pages, Blazor oder minimalen APIs wechseln. Die reine MVC-Architektur von Rotativakann diese modernen Muster nicht unterstützen.

CSS-Rendering-Beschränkungen beeinträchtigen die Qualität der Dokumente, wenn Designs Flexbox oder CSS Grid verwenden. Die veraltete WebKit-Engine von Rotativaaus dem Jahr 2012 kann diese Layouts nicht korrekt wiedergeben.

JavaScript-Zuverlässigkeit wirkt sich auf die Wiedergabe dynamischer Inhalte aus. Komplexes JavaScript, das in Browsern funktioniert, wird mit der eingeschränkten JavaScript-Unterstützung von wkhtmltopdf oft nicht oder falsch wiedergegeben.

Asynchrone Skalierbarkeit ist wichtig für Anwendungen mit hohem Durchsatz. Das rein synchrone Muster von Rotativablockiert Threads, während IronPDF für eine bessere Ressourcennutzung vollständig async/await unterstützt.

Stärken und Gegensätze

RotativaStärken

  • Einfache MVC-Integration für einfache Anwendungsfälle
  • Offene Quelle (MIT-Lizenz)
  • Vertrautes Muster für MVC-Legacy-Anwendungen
  • Keine Kosten für kommerzielle Lizenzen

Einschränkungen von Rotativa

  • Nur ASP.NET MVC - keine Razor Pages, Blazor oder minimale APIs
  • Aufgegeben - keine Updates oder Wartung
  • Kritische Sicherheitsschwachstellen, die nie gepatcht werden
  • Veraltete WebKit-Rendering-Engine (2012)
  • Keine Unterstützung von Flexbox oder CSS Grid
  • Unzuverlässige JavaScript-Ausführung
  • Nur synchron - schlechte Skalierbarkeit
  • Keine PDF-Manipulationsmöglichkeiten
  • Keine digitalen Signaturen oder PDF/A-Konformität

IronPDF Stärken

  • Funktioniert mit jedem .NET-Projekttyp
  • Modernes Chromium-Rendering mit vollständiger CSS3/JavaScript-Unterstützung
  • Aktive Pflege mit regelmäßigen Sicherheitsupdates
  • Vollständige Unterstützung von async/await
  • Umfassende PDF-Bearbeitung-Funktionen
  • Digitale Signaturen und Sicherheit
  • PDF/A-Archivierungskonformität
  • Professionelle Unterstützung und Dokumentation

IronPDF Überlegungen

  • Kommerzielles Lizenzierungsmodell
  • Erfordert die Initialisierung des Lizenzschlüssels

Abschluss

Rotativa bot eine unkomplizierte Lösung für die PDF-Generierung in ASP.NET MVC-Anwendungen, als es noch aktiv gepflegt wurde. Die Aufgabe der Bibliothek in Verbindung mit kritischen, nicht behobenen Sicherheitslücken in der wkhtmltopdf-Grundlage stellt jedoch ein erhebliches Risiko für Produktionsanwendungen dar.

Für Teams, die derzeit mit Rotativaarbeiten, ist die Kombination aus Sicherheitslücken, reiner MVC-Architektur und veralteten Rendering-Funktionen ein zwingender Grund, Alternativen zu prüfen. Für neue Projekte, die auf .NET 10 und C# 14 im Jahr 2026 abzielen, kann die Architektur von Rotativakeine modernen Muster wie Razor Pages, Blazor oder minimale APIs unterstützen.

IronPDF behebt diese Einschränkungen mit einer modernen Chromium-Rendering-Engine, plattformübergreifender .NET-Kompatibilität, aktiver Wartung und umfassenden PDF-Bearbeitungsfunktionen, die Rotativanie bot. Der Migrationspfad von Rotativazu IronPDF beinhaltet hauptsächlich das Ersetzen von MVC-Action-Ergebnissen durch direkte ChromePdfRenderer-Aufrufe und das Aktualisieren der Platzhaltersyntax in Kopf- und Fußzeilen.


Eine Anleitung zur Implementierung finden Sie im IronPDF ASP.NET Core-Tutorial und in der Dokumentation, die PDF-Erzeugungsmuster für moderne .NET-Anwendungen abdeckt.

Hinweis:: Rotativa und wkhtmltopdf sind eingetragene Marken ihrer jeweiligen Eigentümer. Diese Seite ist nicht verbunden mit, wird nicht unterstützt von oder gesponsert von Rotativaoder wkhtmltopdf. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Eigentümer. Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich zugängliche Informationen zum Zeitpunkt des Schreibens wider.
Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.