Zum Fußzeileninhalt springen
MIGRATIONSLEITFäDEN

Wie man von pdforge zu IronPDF in C# migriert

Warum von pdforge zu IronPDF migrieren

Verstehen Sie pdforge

pdforge ist eine Cloud-basierte PDF-Generierungs-API, die eine unkomplizierte Möglichkeit bietet, PDF-Dateien zu erzeugen, indem sie über API-Aufrufe in Ihre Anwendung integriert wird. Indem sie die Aufgabe der PDF-Erstellung an eine externe API auslagern, können Entwickler den Entwicklungsprozess vereinfachen. Allerdings hat pdforge auch Nachteile, wie z. B. externe Abhängigkeiten, begrenzte Anpassungsmöglichkeiten und laufende Abonnementkosten, derer sich Entwickler bewusst sein sollten.

Das Problem der Cloud-API-Abhängigkeit

pdforge verarbeitet alle Dokumente auf externen Cloud-Servern. Diese Architektur schafft erhebliche Probleme für Produktionsanwendungen:

  1. Externe Serververarbeitung: Jedes von Ihnen generierte PDF erfordert das Senden Ihrer HTML-/Daten an die Server von pdforge– Ihre Dokumente verlassen somit Ihre Infrastruktur.

  2. Datenschutz- und Compliance-Risiken: Sensible Daten werden über das Internet an Server von Drittanbietern übertragen. Bei der Verwendung von pdforge müssen die Entwickler Sicherheitsbedenken in Bezug auf die Übermittlung von Daten an eine externe API berücksichtigen. Wenn der PDF-Inhalt sensible Informationen enthält, könnte dies ein kritischer Punkt sein.

  3. Laufende Abonnementkosten: Monatliche Gebühren fallen unbegrenzt an, ohne dass Eigentumsrechte erworben werden. Das SaaS-Modell von pdforge führt zu kontinuierlichen Betriebskosten, die sich im Laufe der Zeit summieren können.

  4. Internetabhängigkeit: Es wird keine PDF-Datei generiert, wenn keine Netzwerkverbindung besteht.

  5. Ratenbegrenzungen: API-Nutzungsbeschränkungen können Anwendungen mit hohem Datenaufkommen ausbremsen.

  6. Netzwerklatenz: Die Roundtrip-Zeit verlängert die Generierung jeder PDF-Datei um einige Sekunden.

pdforge vs IronPDF Vergleich

Feature pdforge IronPDF
Bereitstellungsart Cloud-basierte API Lokale Bibliothek
Abhängigkeiten Erfordert Internet und API-Authentifizierung Keine externen Abhängigkeiten
Anpassung Begrenzte Kontrolle über die PDF-Erzeugung Volle Kontrolle über Anpassungen
Kostenstruktur Laufendes Abonnement Einmalige Kaufoption
Sicherheit Mögliche Probleme mit Daten, die über das Internet gesendet werden Die Datenverarbeitung bleibt vollständig in der lokalen Umgebung
Komplexität der Einrichtung Leichtere Ersteinrichtung durch externe Bearbeitung Erfordert mehr anfängliche Einrichtung und Konfiguration

IronPDF hebt sich durch die Bereitstellung einer vollständig lokalen Bibliothek ab, die Entwicklern die vollständige Kontrolle über den PDF-Erstellungsprozess ermöglicht. Dies ist besonders vorteilhaft für Anwendungen, bei denen die interne Handhabung von Dateien bevorzugt wird oder bei denen externe API-Aufrufe Sicherheitsbedenken aufwerfen.IronPDF verarbeitet alles lokal und minimiert so die Risiken.

Für Teams, die die Einführung von .NET 10 und C# 14 bis 2025 und 2026 planen, bietet IronPDF eine lokale Verarbeitungsgrundlage, die die Abhängigkeit von der Cloud beseitigt und gleichzeitig umfassende PDF-Bearbeitungsfunktionen bietet.


Bevor Sie beginnen

Voraussetzungen

  1. .NET -Umgebung: .NET Framework 4.6.2+ oder .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. NuGet -Zugriff: Möglichkeit zur Installation von NuGet -Paketen
  3. IronPDF -Lizenz: Ihren Lizenzschlüssel erhalten Sie unter IronPDF.

NuGet-Paketänderungen

# Remove pdforgepackages
dotnet remove package pdforge
dotnet remove package PdfForge

# Install IronPDF
dotnet add package IronPdf
# Remove pdforgepackages
dotnet remove package pdforge
dotnet remove package PdfForge

# Install IronPDF
dotnet add package IronPdf
SHELL

Lizenz-Konfiguration

// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup (Program.vb or Startup.vb)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

Identifizieren Sie die Verwendung von pdforge

# Find pdforgeusage
grep -r "PdForge\|PdfClient\|HtmlToPdfRequest\|HtmlToPdfConverter" --include="*.cs" .

# Find placeholder patterns to migrate
grep -r "{totalPages}" --include="*.cs" .
# Find pdforgeusage
grep -r "PdForge\|PdfClient\|HtmlToPdfRequest\|HtmlToPdfConverter" --include="*.cs" .

# Find placeholder patterns to migrate
grep -r "{totalPages}" --include="*.cs" .
SHELL

Komplette API-Referenz

Namensraumänderungen

// Before: pdforge
using PdfForge;
using System.IO;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
// Before: pdforge
using PdfForge;
using System.IO;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
' Before: pdforge
Imports PdfForge
Imports System.IO

' After: IronPDF
Imports IronPdf
Imports IronPdf.Rendering
$vbLabelText   $csharpLabel

Kernklassen-Zuordnungen

pdforge IronPDF
HtmlToPdfConverter ChromePdfRenderer
PdfClient ChromePdfRenderer
PageSize.A4 PdfPaperSize.A4
PageOrientation.Landscape PdfPaperOrientation.Landscape
Rückgabetyp: byte[] PdfDocument

Methoden-Zuordnungen

pdforge IronPDF
converter.ConvertHtmlString(html) renderer.RenderHtmlAsPdf(html)
converter.ConvertUrl(url) renderer.RenderUrlAsPdf(url)
File.WriteAllBytes(path, bytes) pdf.SaveAs(path)
Rückgabetyp: byte[] pdf.BinaryData

Konfigurations-Zuordnungen

pdforge IronPDF(RenderingOptions)
converter.PageSize = PageSize.A4 renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
converter.Orientation = PageOrientation.Landscape renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
Footer = "Page {page} of {totalPages}" TextFooter = new TextHeaderFooter { CenterText = "Page {page} of {total-pages}" }

Neue Funktionen, die in pdforge nicht verfügbar sind

IronPDF Merkmal Beschreibung
PdfDocument.Merge() Kombinieren mehrerer PDFs
pdf.ExtractAllText() Extrahieren von Text aus PDFs
pdf.ApplyWatermark() Wasserzeichen hinzufügen
pdf.SecuritySettings Passwortschutz
pdf.Form Ausfüllen von Formularen
pdf.SignWithDigitalSignature() Digitale Signaturen

Beispiele für die Code-Migration

Beispiel 1: Konvertierung von HTML-Strings in PDF

Vor (pdforge):

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

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = converter.ConvertHtmlString(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
// NuGet: Install-Package PdfForge
using PdfForge;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = converter.ConvertHtmlString(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
Imports PdfForge
Imports System.IO

Class Program
    Shared Sub Main()
        Dim converter = New HtmlToPdfConverter()
        Dim html = "<html><body><h1>Hello World</h1></body></html>"
        Dim pdf = converter.ConvertHtmlString(html)
        File.WriteAllBytes("output.pdf", pdf)
    End Sub
End Class
$vbLabelText   $csharpLabel

Nach (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var html = "<html><body><h1>Hello World</h1></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();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim html = "<html><body><h1>Hello World</h1></body></html>"
        Dim pdf = renderer.RenderHtmlAsPdf(html)
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

Der grundlegende Unterschied ist das Verarbeitungsmodell und der Rückgabetyp. pdforge verwendet HtmlToPdfConverter mit ConvertHtmlString(), was ein byte[]-Array zurückgibt – Sie müssen dann File.WriteAllBytes() verwenden, um das Ergebnis zu speichern.

IronPDF verwendet ChromePdfRenderer mit RenderHtmlAsPdf(), was ein PdfDocument-Objekt zurückgibt. Dieses Objekt kann direkt mit SaveAs() gespeichert werden, oder Sie können auf pdf.BinaryData zugreifen, wenn Sie die Rohbytes benötigen. Der PdfDocument ermöglicht auch die Bearbeitung (Hinzufügen von Wasserzeichen, Zusammenführen mit anderen PDFs, Hinzufügen von Sicherheitsfunktionen) vor dem Speichern. Umfassende Beispiele finden Sie in der HTML to PDF Dokumentation.

Beispiel 2: Konvertierung von URL in PDF

Vor (pdforge):

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

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var pdf = converter.ConvertUrl("https://example.com");
        File.WriteAllBytes("webpage.pdf", pdf);
    }
}
// NuGet: Install-Package PdfForge
using PdfForge;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var pdf = converter.ConvertUrl("https://example.com");
        File.WriteAllBytes("webpage.pdf", pdf);
    }
}
Imports PdfForge
Imports System.IO

Class Program
    Shared Sub Main()
        Dim converter = New HtmlToPdfConverter()
        Dim pdf = converter.ConvertUrl("https://example.com")
        File.WriteAllBytes("webpage.pdf", pdf)
    End Sub
End Class
$vbLabelText   $csharpLabel

Nach (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");
    }
}
Imports IronPdf

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderUrlAsPdf("https://example.com")
        pdf.SaveAs("webpage.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

pdforge verwendet ConvertUrl() auf der Klasse HtmlToPdfConverter und gibt Bytes zurück, die Sie mit File.WriteAllBytes() schreiben.IronPDF verwendet RenderUrlAsPdf() auf ChromePdfRenderer und gibt ein PdfDocument mit der eingebauten Methode SaveAs() zurück.

Der Hauptvorteil von IronPDF besteht darin, dass die URL lokal mit einer Chromium-Engine abgerufen und gerendert wird - es werden keine Daten an externe Server gesendet. Da IronPDF eine lokale Bibliothek ist, bietet es möglicherweise eine bessere Leistung, da bei Webanfragen keine Round-Trip-Zeit anfällt. Erfahren Sie mehr über die URL in PDF Konvertierung.

Beispiel 3: HTML-Datei in PDF mit benutzerdefinierten Einstellungen

Vor (pdforge):

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

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.PageSize = PageSize.A4;
        converter.Orientation = PageOrientation.Landscape;
        var htmlContent = File.ReadAllText("input.html");
        var pdf = converter.ConvertHtmlString(htmlContent);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
// NuGet: Install-Package PdfForge
using PdfForge;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.PageSize = PageSize.A4;
        converter.Orientation = PageOrientation.Landscape;
        var htmlContent = File.ReadAllText("input.html");
        var pdf = converter.ConvertHtmlString(htmlContent);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
Imports PdfForge
Imports System.IO

Class Program
    Shared Sub Main()
        Dim converter As New HtmlToPdfConverter()
        converter.PageSize = PageSize.A4
        converter.Orientation = PageOrientation.Landscape
        Dim htmlContent As String = File.ReadAllText("input.html")
        Dim pdf As Byte() = converter.ConvertHtmlString(htmlContent)
        File.WriteAllBytes("output.pdf", pdf)
    End Sub
End Class
$vbLabelText   $csharpLabel

Nach (IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
        var htmlContent = System.IO.File.ReadAllText("input.html");
        var pdf = renderer.RenderHtmlAsPdf(htmlContent);
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
        var htmlContent = System.IO.File.ReadAllText("input.html");
        var pdf = renderer.RenderHtmlAsPdf(htmlContent);
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports IronPdf.Rendering

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
        Dim htmlContent = System.IO.File.ReadAllText("input.html")
        Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

Dieses Beispiel zeigt den Unterschied im Konfigurationsmuster. pdforge setzt Eigenschaften direkt auf dem Konverterobjekt (converter.PageSize = PageSize.A4, converter.Orientation = PageOrientation.Landscape).

IronPDF verwendet die RenderingOptions Eigenschaft mit stark typisierten Aufzählungen: renderer.RenderingOptions.PaperSize = PdfPaperSize.A4 und renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape. Dies bietet IntelliSense-Unterstützung und Kompilierzeit-Typensicherheit. Beachten Sie, dass IronPDF den Import des Namespace IronPdf.Rendering für die Enumerationen für Papiergröße und -ausrichtung erfordert. In den Tutorials finden Sie weitere Konfigurationsbeispiele.


Kritische Hinweise zur Migration

Rückgabetyp ändern

pdforge gibt byte[] zurück;IronPDF gibt PdfDocument zurück:

// pdforge: Returns byte[]
byte[] pdfBytes = converter.ConvertHtmlString(html);
File.WriteAllBytes("output.pdf", pdfBytes);

// IronPDF: Returns PdfDocument
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");           // Direct save
byte[] bytes = pdf.BinaryData;      // Get bytes if needed
// pdforge: Returns byte[]
byte[] pdfBytes = converter.ConvertHtmlString(html);
File.WriteAllBytes("output.pdf", pdfBytes);

// IronPDF: Returns PdfDocument
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");           // Direct save
byte[] bytes = pdf.BinaryData;      // Get bytes if needed
' pdforge: Returns byte()
Dim pdfBytes As Byte() = converter.ConvertHtmlString(html)
File.WriteAllBytes("output.pdf", pdfBytes)

' IronPDF: Returns PdfDocument
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("output.pdf")           ' Direct save
Dim bytes As Byte() = pdf.BinaryData ' Get bytes if needed
$vbLabelText   $csharpLabel

Änderung der Konverterklasse

// pdforge: HtmlToPdfConverter
var converter = new HtmlToPdfConverter();

// IronPDF: ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// pdforge: HtmlToPdfConverter
var converter = new HtmlToPdfConverter();

// IronPDF: ChromePdfRenderer
var renderer = new ChromePdfRenderer();
' pdforge: HtmlToPdfConverter
Dim converter As New HtmlToPdfConverter()

' IronPDF: ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()
$vbLabelText   $csharpLabel

Änderung von Methodennamen

// pdforgemethods
converter.ConvertHtmlString(html)
converter.ConvertUrl(url)

//IronPDFmethods
renderer.RenderHtmlAsPdf(html)
renderer.RenderUrlAsPdf(url)
// pdforgemethods
converter.ConvertHtmlString(html)
converter.ConvertUrl(url)

//IronPDFmethods
renderer.RenderHtmlAsPdf(html)
renderer.RenderUrlAsPdf(url)
' pdforgemethods
converter.ConvertHtmlString(html)
converter.ConvertUrl(url)

' IronPDFmethods
renderer.RenderHtmlAsPdf(html)
renderer.RenderUrlAsPdf(url)
$vbLabelText   $csharpLabel

Methodenänderung speichern

// pdforge: Manual file write
File.WriteAllBytes("output.pdf", pdfBytes);

// IronPDF: Built-in save method
pdf.SaveAs("output.pdf");
// pdforge: Manual file write
File.WriteAllBytes("output.pdf", pdfBytes);

// IronPDF: Built-in save method
pdf.SaveAs("output.pdf");
' pdforge: Manual file write
File.WriteAllBytes("output.pdf", pdfBytes)

' IronPDF: Built-in save method
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

Konfigurationsort ändern

pdforge verwendet Eigenschaften des Konverters;IronPDF verwendet RenderingOptions:

// pdforge: Properties on converter
converter.PageSize = PageSize.A4;
converter.Orientation = PageOrientation.Landscape;

// IronPDF: Properties on RenderingOptions
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
// pdforge: Properties on converter
converter.PageSize = PageSize.A4;
converter.Orientation = PageOrientation.Landscape;

// IronPDF: Properties on RenderingOptions
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
' pdforge: Properties on converter
converter.PageSize = PageSize.A4
converter.Orientation = PageOrientation.Landscape

' IronPDF: Properties on RenderingOptions
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape
$vbLabelText   $csharpLabel

Kopf-/Fußzeilen-Platzhalter-Syntax

Wenn Sie Seitenzahlen in Kopf- oder Fußzeilen verwenden, unterscheidet sich die Syntax der Platzhalter:

// pdforgeplaceholders
"Page {page} of {totalPages}"

//IronPDFplaceholders
"Page {page} of {total-pages}"  // Note: hyphen in total-pages
// pdforgeplaceholders
"Page {page} of {totalPages}"

//IronPDFplaceholders
"Page {page} of {total-pages}"  // Note: hyphen in total-pages
' pdforgeplaceholders
"Page {page} of {totalPages}"

' IronPDFplaceholders
"Page {page} of {total-pages}"  ' Note: hyphen in total-pages
$vbLabelText   $csharpLabel

Neue Funktionen nach der Migration

Nach der Migration zu IronPDF erhalten Sie Funktionen, die pdforge nicht bieten kann:

PDF-Zusammenführung

var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
Dim pdf1 = PdfDocument.FromFile("document1.pdf")
Dim pdf2 = PdfDocument.FromFile("document2.pdf")
Dim merged = PdfDocument.Merge(pdf1, pdf2)
merged.SaveAs("merged.pdf")
$vbLabelText   $csharpLabel

Textextraktion

var pdf = PdfDocument.FromFile("document.pdf");
string allText = pdf.ExtractAllText();
var pdf = PdfDocument.FromFile("document.pdf");
string allText = pdf.ExtractAllText();
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim allText As String = pdf.ExtractAllText()
$vbLabelText   $csharpLabel

Wasserzeichen

pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>")
$vbLabelText   $csharpLabel

Passwortschutz

pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.UserPassword = "userpassword"
pdf.SecuritySettings.OwnerPassword = "ownerpassword"
$vbLabelText   $csharpLabel

Zusammenfassung des Funktionsvergleichs

Feature pdforge IronPDF
HTML zu PDF
URL zu PDF
Seite Einstellungen
Offline-fähig
Lokale Verarbeitung
PDFs zusammenführen
PDFs teilen
Text extrahieren
Wasserzeichen
Formular ausfüllen
Digitale Signaturen
Passwortschutz
Keine Preisbeschränkung
Einmallizenz

Migrations-Checkliste

Vor der Migration

  • Inventarisierung aller pdforge-API-Aufrufe im Quellcode
  • Dokumentieren Sie die aktuell verwendeten Konfigurationsoptionen (Seitengröße, Ausrichtung)
  • Identifizieren Sie die zu aktualisierenden Kopf-/Fußzeilenplatzhalter ({totalPages}{total-pages})
  • Speicherung des IronPDF-Lizenzschlüssels (Umgebungsvariablen empfohlen)
  • Zuerst mit der IronPDF Testlizenz testen

Paketänderungen

  • Entfernen Sie das NuGet Paket pdforge
  • Entfernen Sie das NuGet Paket PdfForge
  • Installieren Sie das NuGet Paket IronPdf: dotnet add package IronPdf

Code-Änderungen

  • Aktualisiere alle Namespace-Importe (using PdfForge;using IronPdf;)
  • Fügen Sie using IronPdf.Rendering; für die Enumerationen für Papiergröße und -ausrichtung hinzu
  • Ersetzen Sie HtmlToPdfConverter durch ChromePdfRenderer
  • Ersetzen Sie ConvertHtmlString() durch RenderHtmlAsPdf()
  • Ersetzen Sie ConvertUrl() durch RenderUrlAsPdf()
  • Ersetzen Sie File.WriteAllBytes() durch pdf.SaveAs()
  • Verschiebe die Eigenschaft PageSize nach RenderingOptions.PaperSize
  • Verschiebe die Eigenschaft Orientation nach RenderingOptions.PaperOrientation
  • Aktualisierung der Enum-Namen (PageSize.A4PdfPaperSize.A4)
  • Aktualisierung der Enum-Namen (PageOrientation.LandscapePdfPaperOrientation.Landscape)
  • Aktualisieren Sie die Platzhaltersyntax in Kopf- und Fußzeilen

Nach der Migration

  • Testen Sie, ob die Qualität der PDF-Ausgabe den Erwartungen entspricht
  • Überprüfen Sie, ob der Offline-Betrieb funktioniert
  • API-Zugangsdaten aus der Konfiguration entfernen
  • Fügen Sie bei Bedarf neue Funktionen hinzu (Zusammenführung, Wasserzeichen, Sicherheit).

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

Iron Support Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an