Zum Fußzeileninhalt springen
MIGRATIONSLEITFäDEN

Migrieren von XFINIUM.PDF zu IronPDF in C#

Migrieren von XFINIUM.PDF zu IronPDF: Ein kompletter C#-Entwicklerleitfaden

XFINIUM.PDF ist eine plattformübergreifende PDF-Bibliothek, die umfassende Werkzeuge für die programmgesteuerte Erstellung und Bearbeitung von PDFs in C# bietet. Die Bibliothek bietet zwar zwei Editionen - Generator und Viewer -, aber die Tatsache, dass sie auf koordinatenbasierter Grafikprogrammierung beruht, stellt Entwicklerteams, die dokumentenlastige Anwendungen erstellen, vor große Herausforderungen. Jedes Element muss manuell mit Hilfe von Pixelkoordinaten positioniert werden, wodurch die eigentlich einfachen Dokumente zu komplexen Zeichenübungen werden.

Dieser Leitfaden bietet einen vollständigen Migrationspfad von XFINIUM.PDF zu IronPDF, mit Schritt-für-Schritt-Anleitungen, Code-Vergleichen und praktischen Beispielen für professionelle .NET-Entwickler, die diesen Übergang evaluieren.

Warum von XFINIUM.PDF migrieren

XFINIUM.PDF ist eine Low-Level-PDF-Bibliothek, die auf koordinatenbasierter Grafikprogrammierung beruht und Entwickler dazu zwingt, jedes Element manuell auf der Seite zu positionieren. Dieser Ansatz wird zu einem Alptraum für die Wartung, wenn sich die Anforderungen ändern. Zu den wichtigsten Gründen, warum Entwicklerteams eine Migration in Betracht ziehen, gehören:

Keine HTML-Unterstützung: XFINIUM.PDF kann HTML/CSS nicht direkt in PDF konvertieren. Der Schwerpunkt liegt auf der programmatischen PDF-Erstellung mit Low-Level-Zeichenprimitiven, die für Projekte, die umfangreiche HTML-zu-PDF-Funktionen erfordern, möglicherweise nicht ausreichen.

Koordinaten-basierte API: Manuelle Positionierung mit Pixelkoordinaten wie DrawString("text", font, brush, 50, 100) ist für jedes Element auf der Seite erforderlich.

Manuelle Schriftartenverwaltung: Font-Objekte müssen explizit mit Klassen wie PdfStandardSchriftund PdfBrusherstellt und verwaltet werden.

Kein CSS-Styling: Keine Unterstützung für modernes Web-Styling. Farben, Schriftarten und Layouts müssen manuell durch programmatische Methodenaufrufe gehandhabt werden.

Kein JavaScript Rendering: Nur statische Inhalte. XFINIUM.PDF kann keine dynamischen Webinhalte darstellen oder JavaScript ausführen.

Komplexes Textlayout: Für alles, was über einfachen einzeiligen Text hinausgeht, sind manuelle Textmessungen und Umbruchberechnungen erforderlich.

Beschränkte Community-Ressourcen: Im Vergleich zu Mainstream-Lösungen gibt es einen Mangel an Community-Ressourcen wie Beispielen und Tutorials, was neuen Benutzern den Einstieg erschweren kann.

Das Kernproblem: Grafik-API vs. HTML

XFINIUM.PDF zwingt Sie dazu, wie ein Grafikprogrammierer und nicht wie ein Dokumentendesigner zu denken:

// XFINIUM.PDF: Position every element manually
page.Graphics.DrawString("Invoice", titleFont, titleBrush, 50, 50);
page.Graphics.DrawString("Customer:", labelFont, brush, 50, 80);
page.Graphics.DrawString(customer.Name, valueFont, brush, 120, 80);
// ... hundreds of lines for a simple document
// XFINIUM.PDF: Position every element manually
page.Graphics.DrawString("Invoice", titleFont, titleBrush, 50, 50);
page.Graphics.DrawString("Customer:", labelFont, brush, 50, 80);
page.Graphics.DrawString(customer.Name, valueFont, brush, 120, 80);
// ... hundreds of lines for a simple document
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF verwendet vertrautes HTML/CSS:

// IronPDF: Declarative HTML
var html = @"<h1>Invoice</h1><p><b>Customer:</b> " + customer.Name + "</p>";
var pdf = renderer.RenderHtmlAsPdf(html);
// IronPDF: Declarative HTML
var html = @"<h1>Invoice</h1><p><b>Customer:</b> " + customer.Name + "</p>";
var pdf = renderer.RenderHtmlAsPdf(html);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDFvs. XFINIUM.PDF: Funktionsvergleich

Das Verständnis der architektonischen Unterschiede hilft technischen Entscheidungsträgern, die Investition in die Migration zu bewerten:

Feature XFINIUM.PDF IronPDF
HTML zu PDF Begrenzte HTML-Unterstützung, Schwerpunkt ist die programmatische PDF-Erstellung Vollständige HTML-zu-PDF-Konvertierung mit umfassender Unterstützung
Gemeinschaft & Unterstützung Kleinere Gemeinschaft, weniger Online-Ressourcen verfügbar Große Community mit umfangreicher Dokumentation und Tutorials
Lizenz Kommerziell mit entwicklerbasierter Lizenzierung Kommerziell
Plattformübergreifende Unterstützung Starke plattformübergreifende Fähigkeiten Unterstützt auch plattformübergreifende Operationen
CSS-Unterstützung Nein Vollständig CSS3
JavaScript Nein Vollständiger ES2024
Flexbox/Grid Nein Ja
Automatisches Layout Nein Ja
Automatische Seitenumbrüche Nein Ja
Handbuch Positionierung Erforderlich Optional (CSS-Positionierung)
Lernkurve Hoch (Koordinatensystem) Niedrig (HTML/CSS)
Code Verbosity Sehr hoch Niedrig

Schnellstart: XFINIUM.PDF zuIronPDFMigration

Mit diesen grundlegenden Schritten kann die Migration sofort beginnen.

Schritt 1: Ersetzen des NuGet-Pakets

XFINIUM.PDF entfernen:

# Remove XFINIUM.PDF
dotnet remove package Xfinium.Pdf
# Remove XFINIUM.PDF
dotnet remove package Xfinium.Pdf
SHELL

IronPDF installieren:

# Install IronPDF
dotnet add package IronPdf
# Install IronPDF
dotnet add package IronPdf
SHELL

Schritt 2: Namespaces aktualisieren

Ersetzen Sie die XFINIUM.PDF-Namensräume durch den IronPdf-Namensraum:

// Before (XFINIUM.PDF)
using Xfinium.Pdf;
using Xfinium.Pdf.Graphics;
using Xfinium.Pdf.Content;
using Xfinium.Pdf.FlowDocument;

// After (IronPDF)
using IronPdf;
// Before (XFINIUM.PDF)
using Xfinium.Pdf;
using Xfinium.Pdf.Graphics;
using Xfinium.Pdf.Content;
using Xfinium.Pdf.FlowDocument;

// After (IronPDF)
using IronPdf;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Schritt 3: Lizenz initialisieren

Hinzufügen der Lizenzinitialisierung beim Start der Anwendung:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

Beispiele für die Code-Migration

Konvertierung von HTML in PDF

Der grundlegendste Vorgang offenbart den Komplexitätsunterschied zwischen diesen .NET-PDF-Bibliotheken.

XFINIUM.PDF-Ansatz:

// NuGet: Install-Package Xfinium.Pdf
using Xfinium.Pdf;
using Xfinium.Pdf.Actions;
using Xfinium.Pdf.FlowDocument;
using System.IO;

class Program
{
    static void Main()
    {
        PdfFixedDocument document = new PdfFixedDocument();
        PdfFlowDocument flowDocument = new PdfFlowDocument();

        string html = "<html><body><h1>Hello World</h1><p>This is a PDF from HTML.</p></body></html>";

        PdfFlowContent content = new PdfFlowContent();
        content.AppendHtml(html);
        flowDocument.AddContent(content);

        flowDocument.RenderDocument(document);
        document.Save("output.pdf");
    }
}
// NuGet: Install-Package Xfinium.Pdf
using Xfinium.Pdf;
using Xfinium.Pdf.Actions;
using Xfinium.Pdf.FlowDocument;
using System.IO;

class Program
{
    static void Main()
    {
        PdfFixedDocument document = new PdfFixedDocument();
        PdfFlowDocument flowDocument = new PdfFlowDocument();

        string html = "<html><body><h1>Hello World</h1><p>This is a PDF from HTML.</p></body></html>";

        PdfFlowContent content = new PdfFlowContent();
        content.AppendHtml(html);
        flowDocument.AddContent(content);

        flowDocument.RenderDocument(document);
        document.Save("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF-Ansatz:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1><p>This is a PDF from HTML.</p></body></html>";

        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 = "<html><body><h1>Hello World</h1><p>This is a PDF from HTML.</p></body></html>";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

XFINIUM.PDF erfordert die Erstellung eines PdfFixedDocument, eines PdfFlowDocument, eines PdfFlowContent-Objekts, den Aufruf von AppendHtml(), das Hinzufügen von Inhalten zum Flow-Dokument, das Rendern in das feste Dokument und schließlich das Speichern.IronPDFvereinfacht dies auf drei Zeilen: einen Renderer erstellen, HTML rendern und speichern.

Für fortgeschrittene HTML-zu-PDF-Szenarien siehe den HTML-zu-PDF-Konvertierungsleitfaden.

Mehrere PDFs zusammenführen

Die PDF-Zusammenführung zeigt die Unterschiede in der API-Komplexität deutlich auf.

XFINIUM.PDF-Ansatz:

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

class Program
{
    static void Main()
    {
        PdfFixedDocument output = new PdfFixedDocument();

        FileStream file1 = File.OpenRead("document1.pdf");
        PdfFixedDocument pdf1 = new PdfFixedDocument(file1);

        FileStream file2 = File.OpenRead("document2.pdf");
        PdfFixedDocument pdf2 = new PdfFixedDocument(file2);

        for (int i = 0; i < pdf1.Pages.Count; i++)
        {
            output.Pages.Add(pdf1.Pages[i]);
        }

        for (int i = 0; i < pdf2.Pages.Count; i++)
        {
            output.Pages.Add(pdf2.Pages[i]);
        }

        output.Save("merged.pdf");

        file1.Close();
        file2.Close();
    }
}
// NuGet: Install-Package Xfinium.Pdf
using Xfinium.Pdf;
using System.IO;

class Program
{
    static void Main()
    {
        PdfFixedDocument output = new PdfFixedDocument();

        FileStream file1 = File.OpenRead("document1.pdf");
        PdfFixedDocument pdf1 = new PdfFixedDocument(file1);

        FileStream file2 = File.OpenRead("document2.pdf");
        PdfFixedDocument pdf2 = new PdfFixedDocument(file2);

        for (int i = 0; i < pdf1.Pages.Count; i++)
        {
            output.Pages.Add(pdf1.Pages[i]);
        }

        for (int i = 0; i < pdf2.Pages.Count; i++)
        {
            output.Pages.Add(pdf2.Pages[i]);
        }

        output.Save("merged.pdf");

        file1.Close();
        file2.Close();
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF-Ansatz:

// NuGet: Install-Package IronPdf
using IronPdf;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        var pdf1 = PdfDocument.FromFile("document1.pdf");
        var pdf2 = PdfDocument.FromFile("document2.pdf");

        var merged = PdfDocument.Merge(pdf1, pdf2);
        merged.SaveAs("merged.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        var pdf1 = PdfDocument.FromFile("document1.pdf");
        var pdf2 = PdfDocument.FromFile("document2.pdf");

        var merged = PdfDocument.Merge(pdf1, pdf2);
        merged.SaveAs("merged.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

XFINIUM.PDF erfordert die Erstellung eines Ausgabedokuments, das Öffnen von Dateistreams, das Laden jedes Dokuments, die manuelle Iteration durch die Seiten und das Hinzufügen einer Seite nach der anderen, das Speichern und das Schließen der Streams.IronPDFbietet eine einzige PdfDocument.Merge()-Methode, die die gesamte Komplexität intern behandelt.

In der PDF-Zusammenführungsdokumentation finden Sie weitere Zusammenführungsoptionen.

Erstellen von PDFs mit Text und Bildern

Dokumente mit gemischtem Inhalt zeigen den grundlegenden Paradigmenunterschied.

XFINIUM.PDF-Ansatz:

// NuGet: Install-Package Xfinium.Pdf
using Xfinium.Pdf;
using Xfinium.Pdf.Graphics;
using Xfinium.Pdf.Core;
using System.IO;

class Program
{
    static void Main()
    {
        PdfFixedDocument document = new PdfFixedDocument();
        PdfPage page = document.Pages.Add();

        PdfStandardFont font = new PdfStandardFont(PdfStandardFontFace.Helvetica, 24);
        PdfBrush brush = new PdfBrush(PdfRgbColor.Black);

        page.Graphics.DrawString("Sample PDF Document", font, brush, 50, 50);

        FileStream imageStream = File.OpenRead("image.jpg");
        PdfJpegImage image = new PdfJpegImage(imageStream);
        page.Graphics.DrawImage(image, 50, 100, 200, 150);
        imageStream.Close();

        document.Save("output.pdf");
    }
}
// NuGet: Install-Package Xfinium.Pdf
using Xfinium.Pdf;
using Xfinium.Pdf.Graphics;
using Xfinium.Pdf.Core;
using System.IO;

class Program
{
    static void Main()
    {
        PdfFixedDocument document = new PdfFixedDocument();
        PdfPage page = document.Pages.Add();

        PdfStandardFont font = new PdfStandardFont(PdfStandardFontFace.Helvetica, 24);
        PdfBrush brush = new PdfBrush(PdfRgbColor.Black);

        page.Graphics.DrawString("Sample PDF Document", font, brush, 50, 50);

        FileStream imageStream = File.OpenRead("image.jpg");
        PdfJpegImage image = new PdfJpegImage(imageStream);
        page.Graphics.DrawImage(image, 50, 100, 200, 150);
        imageStream.Close();

        document.Save("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF-Ansatz:

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string imageBase64 = Convert.ToBase64String(File.ReadAllBytes("image.jpg"));
        string html = $@"
            <html>
                <body>
                    <h1>Sample PDF Document</h1>
                    <img src='data:image/jpeg;base64,{imageBase64}' width='200' height='150' />
                </body>
            </html>";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System.IO;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string imageBase64 = Convert.ToBase64String(File.ReadAllBytes("image.jpg"));
        string html = $@"
            <html>
                <body>
                    <h1>Sample PDF Document</h1>
                    <img src='data:image/jpeg;base64,{imageBase64}' width='200' height='150' />
                </body>
            </html>";

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

XFINIUM.PDF erfordert das Erstellen eines Dokuments, das Hinzufügen einer Seite, das Erstellen von Schrift- und Pinselobjekten, das Zeichnen von Text an bestimmten Koordinaten, das Öffnen eines Bildstroms, das Erstellen eines PdfJpegImage, das Zeichnen des Bildes an Koordinaten mit Abmessungen, das Schließen des Stroms und das Speichern.IronPDFverwendet Standard-HTML mit eingebetteten base64-Bildern - der gleiche Ansatz, den Webentwickler täglich verwenden.

XFINIUM.PDF API toIronPDFMapping Reference

Dieses Mapping beschleunigt die Migration, indem es direkte API-Entsprechungen aufzeigt:

XFINIUM.PDF IronPDF Notizen
PdfFixedDocument ChromePdfRenderer Renderer erstellen, nicht Dokument
PdfSeite Automatisch Aus HTML-Inhalten erstellte Seiten
Seite.Graphics.DrawString() HTML-Textelemente <p>, <h1>, <span>, usw.
Seite.Graphics.DrawImage() <img> tag HTML-Bilder
Seite.Graphics.DrawLine() CSS border oder <hr> HTML/CSS-Zeilen
Seite.Graphics.DrawRectangle() CSS border auf <div> HTML-Boxen
PdfStandardSchrift CSS font-family Keine Schriftobjekte erforderlich
PdfRgbColor CSS Farbe Standard-CSS-Farben
PdfBrush CSS-Eigenschaften Hintergrund, Farbe, etc.
PdfJpegImage <img> Tag mit base64 Oder Dateipfad
document.Save(stream) pdf.SaveAs() oder pdf.BinaryData Mehrere Ausgabeoptionen
PdfFlowDocument RenderHtmlAsPdf() Volle HTML-Unterstützung
PdfFlowContent.AppendHtml() RenderHtmlAsPdf() Direkte HTML-Wiedergabe

Gängige Migrationsprobleme und Lösungen

Ausgabe 1: Koordinatenbasiertes Layout

XFINIUM.PDF: Alles erfordert genaue X,Y-Koordinaten mit manueller Positionierung.

Lösung: Verwenden Sie HTML/CSS-Flow-Layout. Verwenden Sie bei Bedarf CSS für die absolute Positionierung:

.positioned-element {
    position: absolute;
    top: 100px;
    left: 50px;
}

Ausgabe 2: Font-Objekt-Verwaltung

XFINIUM.PDF: Erstellen Sie PdfStandardSchriftoder PdfUnicodeTrueTypeFont Objekte für jede Schriftart.

Lösung: Verwenden Sie CSS font-family - Schriftarten werden automatisch behandelt:

<style>
    body { font-family: Arial, sans-serif; }
    h1 { font-family: 'Times New Roman', serif; font-size: 24px; }
</style>
<style>
    body { font-family: Arial, sans-serif; }
    h1 { font-family: 'Times New Roman', serif; font-size: 24px; }
</style>
HTML

Ausgabe 3: Farbverarbeitung

XFINIUM.PDF: Erstellen Sie PdfRgbColorund PdfBrushObjekte für Farben.

Lösung: Verwenden Sie Standard-CSS-Farben:

.header { color: navy; background-color: #f5f5f5; }
.warning { color: rgb(255, 0, 0); }
.info { color: rgba(0, 0, 255, 0.8); }

Ausgabe 4: Manuelle Seitenumbrüche

XFINIUM.PDF: Verfolgen Sie die Y-Position und erstellen Sie manuell neue Seiten, wenn der Inhalt überläuft.

Lösung:IronPDFsorgt für automatische Seitenumbrüche. Verwenden Sie CSS zur eindeutigen Steuerung:

.section { page-break-after: always; }
.keep-together { page-break-inside: avoid; }

Ausgabe 5: Laden von Bildern

XFINIUM.PDF: Öffnen von Dateistreams, Erstellen von PdfJpegImage-Objekten, Zeichnen an Koordinaten, Schließen von Streams.

Lösung: Verwenden Sie HTML <img>-Tags mit Dateipfaden oder base64-Daten:

<img src="image.jpg" width="200" height="150" />
<!-- or -->
<img src="data:image/jpeg;base64,..." />
<img src="image.jpg" width="200" height="150" />
<!-- or -->
<img src="data:image/jpeg;base64,..." />
HTML

XFINIUM.PDF Migration Checkliste

Vor der Migration anfallende Aufgaben

Überprüfen Sie Ihre Codebasis, um die Verwendung von XFINIUM.PDF zu identifizieren:

grep -r "using Xfinium.Pdf" --include="*.cs" .
grep -r "Graphics.DrawString\|Graphics.DrawImage\|Graphics.DrawLine" --include="*.cs" .
grep -r "using Xfinium.Pdf" --include="*.cs" .
grep -r "Graphics.DrawString\|Graphics.DrawImage\|Graphics.DrawLine" --include="*.cs" .
SHELL

Dokumentieren Sie koordinatenbasierte Layouts und notieren Sie alle X,Y-Positionierungswerte. Identifizieren Sie Schrift- und Farbobjekte (PdfStandardFont, PdfRgbColor, PdfBrush). Abbildung zusammengeführter PDF-Workflows mit PdfFixedDocument.Pages.Add().

Aufgaben der Code-Aktualisierung

  1. Xfinium.Pdf NuGet-Paket entfernen
  2. IronPdf NuGet-Paket installieren
  3. Aktualisierung der Namespace-Importe von Xfinium.Pdf nach IronPdf
  4. Umwandlung von DrawString()-Aufrufen in HTML-Textelemente
  5. Konvertieren von DrawImage()-Aufrufen in HTML <img>-Tags
  6. DrawRectangle() und DrawLine() in CSS-Rahmen umwandeln
  7. Ersetzen Sie PdfStandardSchriftmit CSS font-family
  8. Ersetzen von PdfRgbColorund PdfBrushdurch CSS-Farben
  9. Ersetzen Sie das Zusammenführen von Seitenschleifen durch PdfDocument.Merge()
  10. IronPDF-Lizenzinitialisierung beim Start hinzufügen

Post-Migrationstests

Überprüfen Sie diese Aspekte nach der Migration:

  • Vergleichen Sie die visuelle Ausgabe, um sicherzustellen, dass das Aussehen den Erwartungen entspricht
  • Überprüfen der Textdarstellung mit dem neuen HTML/CSS-Ansatz
  • Bildpositionierung mit CSS überprüfen
  • Testseitenumbrüche treten wie erwartet auf
  • Prüfen, ob die PDF-Sicherheitseinstellungen korrekt angewendet werden
  • Test auf allen Zielplattformen

Die wichtigsten Vorteile der Migration zu IronPDF

Der Wechsel von XFINIUM.PDF zuIronPDFbietet mehrere entscheidende Vorteile:

HTML-basierte Inhaltserstellung: Webentwickler können ihre vorhandenen HTML- und CSS-Kenntnisse nutzen. Sie müssen keine koordinatenbasierten Zeichen-APIs erlernen oder Schrift- und Pinselobjekte verwalten.

Automatisches Layout: Der Textumbruch, die Paginierung und das Flusslayout erfolgen automatisch. Keine manuelle Berechnung von Elementpositionen oder Seitenumbrüchen.

Moderne CSS-Unterstützung: Vollständiges CSS3, einschließlich Flexbox und Grid-Layouts. Responsive Designs werden direkt in PDF übersetzt.

Vereinfachte PDF-Operationen: Ein-Methoden-Aufrufe für allgemeine Operationen wie PdfDocument.Merge() ersetzen komplexe Seiten-Iterationsschleifen.

Aktive Entwicklung: Da die Verbreitung von .NET 10 und C# 14 bis 2026 zunimmt, gewährleisten die regelmäßigen Updates vonIronPDFdie Kompatibilität mit aktuellen und zukünftigen .NET-Versionen.

Umfassende Dokumentation: Große Community mit umfassender Dokumentation, Tutorials und Support-Ressourcen im Vergleich zum kleineren Ökosystem von XFINIUM.PDF.

Abschluss

XFINIUM.PDF bietet umfassende Werkzeuge zur PDF-Bearbeitung mit starken plattformübergreifenden Fähigkeiten. Der Ansatz der koordinatenbasierten Grafikprogrammierung führt jedoch zu unnötiger Komplexität bei der Dokumentenerstellung. Jedes Element erfordert eine manuelle Positionierung, die Erstellung von Schriftobjekten und eine explizite Farbverwaltung.

IronPDF verwandelt die PDF-Erstellung von einer grafischen Programmierübung in eine vertraute HTML/CSS-Entwicklung. Der Migrationspfad ist einfach: Ersetzen Sie NuGet-Pakete, konvertieren Sie Zeichenbefehle in HTML-Elemente und nutzen Sie CSS für Styling und Layout.

Beginnen Sie Ihre Migration noch heute mit einer kostenlosen Testversion von IronPDF und erleben Sie die Einfachheit der HTML-basierten Dokumentenerstellung.

Eine umfassende Anleitung zur Implementierung finden Sie in der IronPDF-Dokumentation und den Tutorials.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen