VERGLEICH

FO.NET vs. IronPDF: Leitfaden für einen technischen Vergleich

FO.NET vs IronPDF: Ein technischer Vergleich für .NET-Entwickler

Wenn .NET-Entwickler Lösungen zur PDF-Erzeugung evaluieren, kristallisiert sich FO.NET als ein Nischenwerkzeug heraus, das speziell für die Konvertierung von XSL-FO-Dokumenten in PDF entwickelt wurde. Die Abhängigkeit von der veralteten XSL-FO-Sprache, die fehlende HTML/CSS-Unterstützung und der eingestellte Wartungsstatus veranlassen jedoch viele Teams dazu, Alternativen zu prüfen.IronPDFbietet einen modernen Ansatz mit HTML/CSS-Webstandards, die die meisten Entwickler bereits kennen, mit einer Chromium-Rendering-Engine und aktiven monatlichen Updates.

In diesem Vergleich werden beide Bibliotheken auf technisch relevante Aspekte hin untersucht, damit professionelle Entwickler und Architekten fundierte Entscheidungen für ihre .NET-PDF-Anforderungen treffen können.

Fo.NET verstehen

FO.NET (auch bekannt als FoNet) ist eine Open-Source-Bibliothek, die für die Konvertierung von XSL Formatting Object (XSL-FO)-Dokumenten in PDFs mit C# entwickelt wurde. Die Bibliothek steht unter der Apache 2.0-Lizenz und bildet die XSL-FO-Sprache direkt auf das PDF-Format ab.

FO.NET verwendet FonetDriver als primäre Klasse, wobei die Make()-Fabrikmethode Treiberinstanzen erzeugt und Render()-Methoden XSL-FO-Eingabeströme verarbeiten, um PDF-Ausgabeströme zu erzeugen. Die Konfiguration erfolgt im XSL-FO-Markup selbst mit Elementen wie fo:simple-page-master, fo:layout-master-set und Formatierungsattributen für Ränder, Seitengrößen und Schriftarten.

Eine entscheidende Einschränkung ist, dass FO.NET XSL-FO-Kenntnisse voraussetzt - eine XML-basierte Sprache, die eine W3C-Spezifikation aus dem Jahr 2001 ist und seit 2006 nicht mehr aktualisiert wurde. Die Bibliothek unterstützt weder HTML noch CSS und kann keine Webseiten direkt rendern. XSL-FO wird in der heutigen Technologielandschaft weitgehend als veraltet angesehen. Weniger als 1 % der Entwickler verfügen über Fachkenntnisse in diesem Bereich, während über 98 % HTML/CSS beherrschen.

Das ursprüngliche CodePlex-Repository gibt es nicht mehr, und die GitHub-Forks werden nicht mehr aktiv gepflegt. FO.NET hat interne Abhängigkeiten von System.Drawing, die verhindern, dass es unter Linux/MacOS funktioniert, was es auf den Einsatz unter Windows beschränkt.

IronPDFverstehen

IronPDF ist eine .NET-PDF-Bibliothek, die HTML/CSS für die Gestaltung und das Layout von Dokumenten verwendet und damit Webstandards nutzt, die in der Entwicklung allgegenwärtig sind. Die Bibliothek verwendet eine Chromium-Rendering-Engine und bietet vollständige CSS3-Unterstützung, einschließlich Flexbox- und Grid-Layouts, sowie JavaScript-Ausführung.

IronPDF verwendet ChromePdfRenderer als primäre Rendering-Klasse, wobei RenderingOptions eine programmatische Konfiguration für Seitengröße, Ränder, Kopf- und Fußzeilen und andere PDF-Einstellungen bietet. Die Bibliothek unterstützt das direkte Rendering von URLs, HTML-Strings und HTML-Dateien und erzeugt PdfDocument-Objekte, die gespeichert, zusammengeführt, gesichert oder weiter bearbeitet werden können.

IronPDF wird aktiv mit monatlichen Releases gepflegt, unterstützt den plattformübergreifenden Einsatz (Windows, Linux, macOS) und bietet eine umfassende Dokumentation und Tutorials.

Architektur- und Technologievergleich

Der grundlegende Unterschied zwischen diesen .NET-PDF-Bibliotheken liegt in ihrem Eingabeformat und ihrer technologischen Grundlage.

Aspekt FO.NET IronPDF
Eingabeformat XSL-FO (veraltetes XML) HTML/CSS (moderne Webstandards)
Lernkurve Steep (XSL-FO-Kenntnisse) Sanft (HTML/CSS-Kenntnisse)
Wartung Aufgegeben Monatlich aktiv gepflegt
Windows, Linux, macOS, Docker, Azure, AWS. Nur für Windows Echt plattformübergreifend
CSS-Unterstützung Keine Vollständiges CSS3 (Flexbox, Grid)
JavaScript Keine Volle JavaScript-Unterstützung
URL-Rendering Nicht unterstützt Eingebaut
Moderne Funktionen Beschränkt Kopfzeilen, Fußzeilen, Wasserzeichen, Sicherheit
Dokumentation Veraltet Umfassende Tutorials

FO.NET wurde entwickelt, als erwartet wurde, dass XSL-FO ein Standard für die Dokumentenformatierung werden würde. Das ist nicht geschehen - HTML/CSS wurde zum universellen Dokumentenformat. Die meisten XSL-FO-Ressourcen stammen aus den Jahren 2005-2010, was es zunehmend schwieriger macht, aktuelle Informationen oder Unterstützung durch die Community zu finden.

Code-Vergleich: Gängige PDF-Operationen

HTML-zu-PDF-Konvertierung

Der grundlegendste Vorgang demonstriert den Paradigmenunterschied zwischen XSL-FO- und HTML-Ansätzen.

FO.NET:

// NuGet: Install-Package Fonet
using Fonet;
using Fonet.Render.Pdf;
using System.IO;
using System.Xml;

class Program
{
    static void Main()
    {
        // FoNet requires XSL-FO format, not HTML
        // First convert HTML to XSL-FO (manual process)
        string xslFo = @"<?xml version='1.0' encoding='utf-8'?>
            <fo:root xmlns:fo='http://www.w3.org/1999/XSL/Format'>
                <fo:layout-master-set>
                    <fo:simple-page-master master-name='page'>
                        <fo:region-body/>
                    </fo:simple-page-master>
                </fo:layout-master-set>
                <fo:page-sequence master-reference='page'>
                    <fo:flow flow-name='xsl-region-body'>
                        <fo:block>Hello World</fo:block>
                    </fo:flow>
                </fo:page-sequence>
            </fo:root>";

        FonetDriver driver = FonetDriver.Make();
        driver.Render(new StringReader(xslFo), 
            new FileStream("output.pdf", FileMode.Create));
    }
}
// NuGet: Install-Package Fonet
using Fonet;
using Fonet.Render.Pdf;
using System.IO;
using System.Xml;

class Program
{
    static void Main()
    {
        // FoNet requires XSL-FO format, not HTML
        // First convert HTML to XSL-FO (manual process)
        string xslFo = @"<?xml version='1.0' encoding='utf-8'?>
            <fo:root xmlns:fo='http://www.w3.org/1999/XSL/Format'>
                <fo:layout-master-set>
                    <fo:simple-page-master master-name='page'>
                        <fo:region-body/>
                    </fo:simple-page-master>
                </fo:layout-master-set>
                <fo:page-sequence master-reference='page'>
                    <fo:flow flow-name='xsl-region-body'>
                        <fo:block>Hello World</fo:block>
                    </fo:flow>
                </fo:page-sequence>
            </fo:root>";

        FonetDriver driver = FonetDriver.Make();
        driver.Render(new StringReader(xslFo), 
            new FileStream("output.pdf", FileMode.Create));
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<h1>Hello World</h1><p>This is HTML content.</p>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<h1>Hello World</h1><p>This is HTML content.</p>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Der Kontrast ist groß. FO.NET erfordert eine ausführliche XSL-FO-Auszeichnung mit XML-Namensraumdeklarationen, fo:root, fo:layout-master-set, fo:simple-page-master, fo:page-sequence, fo:flow und fo:block Elementen - und das alles, bevor ein einfacher "Hello World"-Text erzeugt wird. Der Code-Kommentar weist ausdrücklich darauf hin: "FoNet erfordert das XSL-FO-Format, nicht HTML."

IronPDF erstellt einen Renderer, übergibt Standard-HTML, rendert in PDF und speichert einfache Zeilen mit einer Syntax, die Entwickler bereits kennen.

Für fortgeschrittene HTML-Rendering-Optionen lesen Sie bitte den Leitfaden zur Konvertierung von HTML in PDF.

URL zu PDF-Konvertierung

Die Konvertierung von Webseiten in das PDF-Format offenbart eine kritische Fähigkeitslücke.

FO.NET:

// NuGet: Install-Package Fonet
using Fonet;
using System.IO;
using System.Net;

class Program
{
    static void Main()
    {
        // FoNet does not support URL rendering directly
        // Must manually download, convert HTML to XSL-FO, then render
        string url = "https://example.com";
        string html = new WebClient().DownloadString(url);

        // Manual conversion from HTML to XSL-FO required (complex)
        string xslFo = ConvertHtmlToXslFo(html); // Not built-in

        FonetDriver driver = FonetDriver.Make();
        driver.Render(new StringReader(xslFo), 
            new FileStream("webpage.pdf", FileMode.Create));
    }

    static string ConvertHtmlToXslFo(string html)
    {
        // Custom implementation required
        throw new System.NotImplementedException();
    }
}
// NuGet: Install-Package Fonet
using Fonet;
using System.IO;
using System.Net;

class Program
{
    static void Main()
    {
        // FoNet does not support URL rendering directly
        // Must manually download, convert HTML to XSL-FO, then render
        string url = "https://example.com";
        string html = new WebClient().DownloadString(url);

        // Manual conversion from HTML to XSL-FO required (complex)
        string xslFo = ConvertHtmlToXslFo(html); // Not built-in

        FonetDriver driver = FonetDriver.Make();
        driver.Render(new StringReader(xslFo), 
            new FileStream("webpage.pdf", FileMode.Create));
    }

    static string ConvertHtmlToXslFo(string html)
    {
        // Custom implementation required
        throw new System.NotImplementedException();
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://example.com");
        pdf.SaveAs("webpage.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://example.com");
        pdf.SaveAs("webpage.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

FO.NET unterstützt ausdrücklich keine URL-Wiedergabe. Die Code-Kommentare besagen: "FoNet unterstützt keine direkte URL-Wiedergabe" und "Manuelle Konvertierung von HTML nach XSL-FO erforderlich (komplex)." Die Methode ConvertHtmlToXslFo() löst eine NotImplementedException aus, weil diese Umwandlung nicht eingebaut ist und eine eigene Implementierung erfordern würde.

IronPDF bietet eine native RenderUrlAsPdf()-Funktionalität, die das Abrufen von URLs, die Ausführung von JavaScriptund das Rendern in einem einzigen Methodenaufruf erledigt - drei Zeilen Code im Gegensatz zu einem komplexen, nicht implementierten Workflow.

Weitere Informationen zum URL-Rendering finden Sie in der URL to PDF-Dokumentation.

PDF mit benutzerdefinierten Einstellungen

Die Konfiguration von Seitenabmessungen und -rändern demonstriert die Unterschiede im Konfigurationsansatz.

FO.NET:

// NuGet: Install-Package Fonet
using Fonet;
using Fonet.Render.Pdf;
using System.IO;

class Program
{
    static void Main()
    {
        // FoNet settings are configured in XSL-FO markup
        string xslFo = @"<?xml version='1.0' encoding='utf-8'?>
            <fo:root xmlns:fo='http://www.w3.org/1999/XSL/Format'>
                <fo:layout-master-set>
                    <fo:simple-page-master master-name='A4' 
                        page-height='297mm' page-width='210mm'
                        margin-top='20mm' margin-bottom='20mm'
                        margin-left='25mm' margin-right='25mm'>
                        <fo:region-body/>
                    </fo:simple-page-master>
                </fo:layout-master-set>
                <fo:page-sequence master-reference='A4'>
                    <fo:flow flow-name='xsl-region-body'>
                        <fo:block font-size='14pt'>Custom PDF</fo:block>
                    </fo:flow>
                </fo:page-sequence>
            </fo:root>";

        FonetDriver driver = FonetDriver.Make();
        driver.Render(new StringReader(xslFo), 
            new FileStream("custom.pdf", FileMode.Create));
    }
}
// NuGet: Install-Package Fonet
using Fonet;
using Fonet.Render.Pdf;
using System.IO;

class Program
{
    static void Main()
    {
        // FoNet settings are configured in XSL-FO markup
        string xslFo = @"<?xml version='1.0' encoding='utf-8'?>
            <fo:root xmlns:fo='http://www.w3.org/1999/XSL/Format'>
                <fo:layout-master-set>
                    <fo:simple-page-master master-name='A4' 
                        page-height='297mm' page-width='210mm'
                        margin-top='20mm' margin-bottom='20mm'
                        margin-left='25mm' margin-right='25mm'>
                        <fo:region-body/>
                    </fo:simple-page-master>
                </fo:layout-master-set>
                <fo:page-sequence master-reference='A4'>
                    <fo:flow flow-name='xsl-region-body'>
                        <fo:block font-size='14pt'>Custom PDF</fo:block>
                    </fo:flow>
                </fo:page-sequence>
            </fo:root>";

        FonetDriver driver = FonetDriver.Make();
        driver.Render(new StringReader(xslFo), 
            new FileStream("custom.pdf", FileMode.Create));
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF:

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Engines.Chrome;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        renderer.RenderingOptions.MarginLeft = 25;
        renderer.RenderingOptions.MarginRight = 25;

        string html = "<h1 style='font-size:14pt'>Custom PDF</h1>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("custom.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Engines.Chrome;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        renderer.RenderingOptions.MarginLeft = 25;
        renderer.RenderingOptions.MarginRight = 25;

        string html = "<h1 style='font-size:14pt'>Custom PDF</h1>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("custom.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Der Code-Kommentar in FO.NET besagt ausdrücklich: "FoNet-Einstellungen werden in XSL-FO-Markup konfiguriert." Seitengröße, Ränder und Formatierung sind als Attribute auf fo:simple-page-master in die XML-Struktur eingebettet. Das bedeutet, dass die Konfiguration mit dem Inhalt in einem ausführlichen XML-Format verwoben ist.

IronPDF trennt die Konfiguration vom Inhalt durch programmatische RenderingOptions-Eigenschaften. Einstellungen wie PaperSize, MarginTop, MarginBottom, MarginLeftund MarginRightwerden im Renderer-Objekt festgelegt, während der Inhalt reines HTML bleibt.

API-Mapping-Referenz

Für Entwickler, die eine FO.NET-Migration evaluieren oder Funktionen vergleichen möchten, zeigt dieses Mapping gleichwertige Operationen:

Kernklassen-Zuordnung

FO.NET IronPDF Notizen
FonetDriver.Make() new ChromePdfRenderer() Renderer erstellen
driver.Render(inputStream, outputStream) renderer.RenderHtmlAsPdf(html) Kern-Rendering
driver.Render(inputFile, outputStream) renderer.RenderHtmlFileAsPdf(path) Dateibasiert
driver.BaseDirectory RenderingOptions.BaseUrl Basispfad für Ressourcen
driver.OnError += handler Try/catch um rendern Fehlerbehandlung

XSL-FO zu RenderingOptions Mapping

XSL-FO-Attribut IronPDFRenderingOptionen Notizen
Seiten-Höhe/Seiten-Breite Papiergröße Standard- oder benutzerdefinierte Größen
margin-top MarginTop In Millimetern
Rand-unten MarginBottom In Millimetern
Margin-left MarginLeft In Millimetern
margin-right MarginRight In Millimetern
Referenz-Orientierung Papierausrichtung Porträt/Landschaft

XSL-FO-Elemente zu HTML-Zuordnung

XSL-FO-Element HTML-Äquivalent Notizen
<fo:root> <html> Wurzelelement
<fo:layout-master-set> CSS @page-Regel Seite einrichten
<fo:simple-page-master> CSS @page Definition der Seite
<fo:page-sequence> <body> oder <div> Inhalt der Seite
<fo:flow> <main> oder <div> Hauptinhaltsbereich
<fo:static-content> HtmlHeaderFooter Kopfzeilen/Fußzeilen
<fo:block> <p>, <div>, <h1>-<h6> Blockinhalt
<fo:table> <table> Tabellen
<fo:list-block> <ul>, <ol> Verzeichnisse
<fo:external-graphic> <img> Bilder
<fo:page-number/> {Seite} Platzhalter Seitenzahlen

Zusammenfassung des Funktionsvergleichs

Feature FO.NET IronPDF
HTML zu PDF (erfordert manuelle XSL-FO-Konvertierung)
URL zu PDF ❌(nicht unterstützt)
XSL-FO zu PDF Nicht anwendbar
CSS3-Unterstützung ✅(Flexbox, Grid)
JavaScript
Kopf-/Fußzeilen XSL-FO statischer Inhalt HTML-basiert
Seitennummerierung fo:page-number {Seite} Platzhalter
Plattformübergreifend ❌(nur Windows)
Aktive Wartung ❌(aufgegeben) ✅(monatlich)

Wenn Teams den Wechsel von FO.NET zuIronPDFerwägen

Entwicklungsteams erwägen den Übergang von FO.NET zuIronPDFaus mehreren Gründen:

Veraltete Technologie: XSL-FO ist eine W3C-Spezifikation aus dem Jahr 2001, die seit 2006 nicht mehr aktualisiert wurde und weitgehend als veraltet gilt. Die meisten Ressourcen und Dokumentationen stammen aus den Jahren 2005-2010, was es zunehmend schwieriger macht, aktuelle Informationen zu finden oder Entwickler mit XSL-FO-Kenntnissen einzustellen.

Steile Lernkurve: XSL-FO erfordert das Erlernen von komplexem XML-basiertem Markup mit speziellen Formatierungsobjekten (fo:block, fo:table, fo:page-sequence usw.). Weniger als 1 % der Entwickler kennen XSL-FO im Vergleich zu mehr als 98 %, die HTML/CSS kennen.

Keine HTML/CSS-Unterstützung: FO.NET kann weder HTML noch CSS darstellen - es erfordert eine manuelle Konvertierung von HTML in XSL-FO-Markup, das nicht in die Bibliothek integriert ist. Teams mit Webinhalten oder HTML-Vorlagen müssen eine eigene Konvertierungslogik implementieren.

Aufgegebene Wartung: Das ursprüngliche CodePlex-Repository ist nicht mehr aktiv, und die GitHub-Forks werden nicht mehr aktiv gewartet. Sicherheitspatches, Fehlerbehebungen und neue Funktionen werden nicht entwickelt.

Plattformbeschränkungen: FO.NET hat interne Abhängigkeiten von System.Drawing, die es daran hindern, unter Linux/MacOS zu funktionieren, was den Einsatz auf reine Windows-Umgebungen beschränkt. Moderne Anwendungen erfordern zunehmend eine plattformübergreifende Bereitstellung.

Fehlende moderne Funktionen: Keine JavaScript-Unterstützung, keine CSS3-Funktionen (Flexbox, Grid), keine modernen Web-Schriften und keine direkte URL-Rendering-Fähigkeit.

Stärken und Überlegungen

FO.NET Stärken

  • Direkte XSL-FO-Konvertierung: Speziell für die Konvertierung von XSL-FO in PDF optimiert
  • Open Source: Apache 2.0 Lizenz - frei zu verwenden, zu verändern und zu verbreiten
  • Präzise Kontrolle: XSL-FO bietet detaillierte Kontrolle über das Dokumentenlayout

FO.NET Überlegungen

  • Veraltete Technologie: Die XSL-FO-Spezifikation wurde seit 2006 nicht mehr aktualisiert
  • Erfordert XSL-FO-Kenntnisse: Weniger als 1 % der Entwickler haben Fachkenntnisse
  • Keine HTML-Unterstützung: Kann keine HTML- oder CSS-Inhalte wiedergeben
  • Abgebrochen: Keine aktive Wartung oder Sicherheitsupdates
  • Nur Windows: System.Drawing-Abhängigkeiten verhindern eine plattformübergreifende Nutzung
  • Kein URL-Rendering: Keine direkte Konvertierung von Webseiten möglich
  • Beschränkte Dokumentation: Die Ressourcen sind veraltet

IronPDFStärken

  • HTML/CSS Standard: Verwendet Webtechnologien, die mehr als 98 % der Entwickler bereits kennen
  • Modernes Rendering: Chromium-Engine mit vollständiger CSS3- und JavaScript-Unterstützung
  • Aktive Entwicklung: Monatliche Veröffentlichungen mit neuen Funktionen und Sicherheitspatches
  • Plattformübergreifend: Echte Unterstützung für Windows, Linux und macOS
  • Direktes URL-Rendering: Native RenderUrlAsPdf() Fähigkeit
  • Professionelle Funktionen: Kopfzeilen, Fußzeilen, Wasserzeichen, Sicherheit - alles integriert
  • Umfassende Ressourcen: Umfangreiche Tutorials und Dokumentation

IronPDFÜberlegungen

  • Kommerzielle Lizenz: Erfordert eine Lizenz für die produktive Nutzung
  • Unterschiedliches Paradigma: XSL-FO-Vorlagen müssen in HTML konvertiert werden

Abschluss

FO.NET undIronPDFstellen grundlegend unterschiedliche Ansätze für die PDF-Erzeugung in .NET dar. FO.NET bedient den Nischenanwendungsfall der XSL-FO-zu-PDF-Konvertierung, aber seine Abhängigkeit von veralteter Technologie, die aufgegebene Wartung, die Beschränkung auf Windows und die fehlende HTML-Unterstützung machen es zunehmend schwierig, es für neue Projekte zu rechtfertigen.

IronPDF bietet einen modernen Ansatz unter Verwendung von HTML/CSS-Webstandards, der sich an den aktuellen Fähigkeiten und Technologien der Entwickler orientiert. Die Fähigkeit, HTML und URLs direkt zu rendern und CSS3 mit einer Chromium-Engine zu verwenden, macht es für die heutigen Anforderungen an die PDF-Erstellung geeignet.

Da Unternehmen für .NET 10, C# 14 und die Anwendungsentwicklung bis 2026 planen, ist die technologische Grundlage wichtig. Teams, die alte XSL-FO-Systeme pflegen, können weiterhin FO.NET verwenden, aber der Weg zur modernen PDF-Erzeugung führt eindeutig über HTML-basierte Lösungen wie IronPDF, die das vorhandene Fachwissen in der Webentwicklung nutzen.

Testen SieIronPDFmit einer kostenlosen Testversion und lesen Sie die umfassende Dokumentation, um die Eignung für Ihre spezifischen Anforderungen zu prüfen.