IRONSOFTWAREHOME
VIDEOS

Wie man Markdown in PDF konvertiert

Curtis Chau
Curtis Chau
Updated: 18. Mai 2026

ExpertPdf ist ein kommerzieller HTML-zu-PDF-Konverter for .NET, herausgegeben vonOutside Software Inc.Die neueste Version auf nuget.org ist v20.1.0 (April 2025), sodass die Suite noch aktiv ausgeliefert wird — die Reibung liegt in der Produktform, nicht in der Aufgabe. ExpertPdfverlässt sich auf eine Trident (IE) Engine plus eine "WebKit2" Engine, die in v12.2 hinzugefügt wurde; moderner Chromium ist nicht die Standardeinstellung. Öffentliche ComponentSource-Listings haben historisch den HtmlToPdf-Konverter zu etwa $550–$1.200 pro Tier gezeigt (direkt beim Anbieter verifizieren). Das Toolkit ist auch auf separate NuGet-Pakete aufgeteilt — HtmlToPdf, MergePdf, PdfSecurity, SplitPdf, PdfToImage, PdfCreator — jedes typischerweise separat lizenziert. Dieses Handbuch bietet einen schrittweisen Migrationspfad von ExpertPdfzu IronPDF, einer .NET PDF-Bibliothek mit dem aktuellsten Chromium-Rendering, häufigen Releases und einem All-In-One-Paket.

Warum von ExpertPdfzu IronPDF migrieren?

ExpertPdf stellt mehrere Herausforderungen, die Entwicklungsteams dazu veranlassen, moderne Alternativen zu bewerten. Das Verständnis dieser Aspekte ist für die Planung Ihrer Migrationsstrategie unerlässlich.

Die ExpertPdf-Probleme

  1. Knappe Dokumentation, langsame Kadenz: Referenzdokumentationen existieren auf html-to-pdf.net, aber Tutorials, Featureartikel und Changelog-Einträge sind selten. Die Release-Notes für v20.1 (April 2025) listen "Fehlerbehebungen und Leistungsverbesserungen" auf — keine Hauptfunktionen.

  2. Ältere Rendering-Pipelines: ExpertPdfliefert eine Trident (IE) Engine plus eine "WebKit2" Engine, die in v12.2 hinzugefügt wurde; moderner Chromium ist nicht die Standardeinstellung. CSS3-Features wie Flexbox, Grid und CSS-Variablen rendern am besten auf der "WebKit2" Engine — prüfen Sie vor dem Migrieren großer Bestände gegen Ihren Ziel-HTML.

  3. Premium-Preise für einen alternden Stack: Öffentliche ComponentSource-Listings haben historisch den HtmlToPdf-Konverter zu etwa $550–$1.200 pro Tier gezeigt (verifizieren Sie direkt beim Anbieter — die Bestellseite auf expertpdf.net war zum Zeitpunkt des Schreibens nicht zugänglich).

  4. Fragmentierte Produkt-Suite: ExpertPdfverkauft separate Pakete — ExpertPdf.HtmlToPdf.NetCore / ExpertPdfHtmlToPdf, ExpertPdf.MergePdf, ExpertPdf.PdfSecurity, ExpertPdf.SplitPdf, ExpertPdf.PdfToImage, ExpertPdf.PdfCreator — die typischerweise separat lizenziert werden.

  5. Keine nativen modernen .NET-Ziele: Die .NetCore-Pakete zielen auf .NET Standard 2.0 / .NET Framework 4.6.1, sodass sie auf .NET 5/6/7/8/9 laufen — jedoch erhalten Sie keine nativen Multi-Target-Builds, Trim-freundliche Assemblies oder asynchrone First-APIs.

Architektur-Vergleich

AspektExpertPdfIronPDF
AnbieterOutside Software Inc.Iron Software
Neueste Version (nuget.org)v20.1.0 (Apr 2025)Kontinuierlich aktualisiert
DokumentationNur Referenzdokumente, wenig TutorialsKontinuierlich aktualisiert
Rendering EngineTrident (IE) + "WebKit2" (hinzugefügt in v12.2)Neuestes Chromium
CSS-UnterstützungCSS3 am besten auf WebKit2; teilweise auf älterenVollständiges CSS3 (Flexbox, Grid)
Preis~$550–$1.200 (beim Anbieter verifizieren)Siehe ironpdf.com/pricing
ProduktmodellFragmentiert (6+ NuGet-Pakete)All-in-One-Bibliothek
Modernes .NET.NET Standard 2.0 (läuft auf .NET 5-9).NET 6/7/8/9+ Multi-target
Async-UnterstützungBeschränktVollständig async/await

Wichtige Vorteile der Migration

  1. Modernes Rendering: Neueste Chromium-Engine für pixelgenaue Ausgabe
  2. Komplettpaket: PDF-Erstellung, Zusammenführung, Sicherheit und Extraktion in einem NuGet
  3. Aktive Weiterentwicklung: Monatliche Updates mit neuen Funktionen und Sicherheitspatches
  4. Bessere Dokumentation: Umfassende Tutorials und Beispiele
  5. Echte Plattformunabhängigkeit: Unterstützung für Windows, Linux, macOS und Docker.

Vorbereitung auf die Migration

Voraussetzungen

Stellen Sie sicher, dass Ihre Umgebung diese Anforderungen erfüllt:

  • .NET Framework 4.6.2+ oder .NET Core 3.1 / .NET 5-9
  • Visual Studio 2019+ oder VS Code mit C#-Erweiterung
  • NuGet Package Manager Zugang
  • IronPDF-Lizenzschlüssel (kostenlose Testversion erhältlich unter ironpdf.com)

Audit ExpertPdfVerwendung

Führen Sie diese Befehle in Ihrem Lösungsverzeichnis aus, um alle ExpertPdf-Referenzen zu identifizieren:

# Find all ExpertPdfreferences
grep -r "ExpertPdf\|PdfConverter\|PDFMerge\|PdfSecurityManager" --include="*.cs" .

# Check NuGet packages
dotnet list package | grep -i "ExpertPdf"
SHELL

Häufige ExpertPdf-Pakete, nach denen zu suchen ist (genauen Namen auf nuget.org verifizieren — die Suite benutzt inkonsistente Groß-Kleinschreibung):

  • ExpertPdfHtmlToPdf (.NET Framework) / ExpertPdf.HtmlToPdf.NetCore (.NET Core / 5-9) — HTML to PDF
  • ExpertPdf.MergePdf — PDF-Zusammenführung
  • ExpertPdf.PdfSecurity — Verschlüsselung und Passwörter
  • ExpertPdf.SplitPdf — PDF-Teilung
  • ExpertPdf.PdfToImage — PDF-zu-Bild-Konvertierung
  • ExpertPdf.PdfCreator — vollständiges PDF-SDK (Zeichnen, Formulare, Signaturen)

Verständnis der Core Pattern Änderung

ExpertPdf verwendet PdfConverter mit direkter Byte-Array-Rückgabemethode.IronPDF verwendet ChromePdfRenderer, das PdfDocument-Objekte zurückgibt, die zusätzliche Bearbeitungsmöglichkeiten vor dem Speichern bieten.

Schritt-für-Schritt-Migrationsprozess

Schritt 1: NuGet-Pakete aktualisieren

Entfernen Sie alle ExpertPdf-Pakete und installieren Sie IronPDF:

# Remove all ExpertPdfpackages (use whichever variants you have installed)
dotnet remove package ExpertPdfHtmlToPdf
dotnet remove package ExpertPdf.HtmlToPdf.NetCore
dotnet remove package ExpertPdf.MergePdf
dotnet remove package ExpertPdf.PdfSecurity
dotnet remove package ExpertPdf.SplitPdf
dotnet remove package ExpertPdf.PdfToImage
dotnet remove package ExpertPdf.PdfCreator

# Install IronPDF(includes all features)
dotnet add package IronPdf
SHELL

Schritt 2: Namensraumreferenzen aktualisieren

Ersetzen Sie die ExpertPdf-Namensräume durch IronPDF:

// Remove these
using ExpertPdf.HtmlToPdf;

// Add this
using IronPdf;

Schritt 3: Lizenz konfigurieren

ExpertPdf verwendet eine Lizenzierung pro Konverter.IronPDF verwendet eine einzige globale Lizenz:

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

Komplette API-Migrationsreferenz

Kernklassen-Zuordnung

ExpertPdf-KlasseIronPDF-Äquivalent
PdfConverterChromePdfRenderer
PdfDocumentOptionsChromePdfRenderOptions
PdfHeaderOptionsTextHeaderFooter oder HtmlHeaderFooter
PdfFooterOptionsTextHeaderFooter oder HtmlHeaderFooter
PDFMergePdfDocument.Merge()

Methoden-Mapping

ExpertPdf-MethodeIronPDF-Methode
pdfConverter.GetPdfBytesFromHtmlString(html)renderer.RenderHtmlAsPdf(html).BinaryData
pdfConverter.GetPdfBytesFromUrl(url)renderer.RenderUrlAsPdf(url).BinaryData
pdfConverter.GetPdfBytesFromHtmlFile(path)renderer.RenderHtmlFileAsPdf(path).BinaryData
pdfConverter.SavePdfFromUrlToFile(url, path)renderer.RenderUrlAsPdf(url).SaveAs(path)

Optionen-Zuordnung

ExpertPdf-OptionIronPDF RenderingOptionen
PdfDocumentOptions.PdfPageSize = PdfPageSize.A4PaperSize = PdfPaperSize.A4
PdfDocumentOptions.PdfPageOrientation = PortraitPaperOrientation = PdfPaperOrientation.Portrait
PdfDocumentOptions.MarginTopMarginTop
PdfHeaderOptions.HeaderTextTextHeader.CenterText
PdfFooterOptions.FooterTextTextFooter.RightText

Konvertierung von Seitennummerierungstoken

ExpertPdf und IronPDF verwenden eine andere Platzhalter-Syntax für Seitenzahlen:

ExpertPdfIronPDF
&p;{page}
&P;{total-pages}

Beispiele für die Code-Migration

HTML-zu-PDF-Konvertierung

Die grundlegende HTML-zu-PDF-Konvertierung demonstriert den Wechsel von ExpertPdfs Byte-Array-Muster zu IronPDFs Dokument-Objekt-Ansatz.

ExpertPdf-Einführung:

// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();
        
        // Convert HTML string to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlString("<h1>Hello World</h1><p>This is a PDF document.</p>");
        
        // Save to file
        System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
        
        Console.WriteLine("PDF created successfully!");
    }
}

IronPDF-Implementierung:

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

class Program
{
    static void Main()
    {
        // Create a PDF from HTML string
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF document.</p>");
        
        // Save to file
        pdf.SaveAs("output.pdf");
        
        Console.WriteLine("PDF created successfully!");
    }
}

Der Ansatz von IronPDF gibt ein PdfDocument-Objekt zurück, das zusätzliche Manipulationen (Zusammenführen, Wasserzeichen, Sicherheit) vor dem Speichern ermöglicht. Weitere Optionen finden Sie in der HTML zu PDF Dokumentation.

URL zu PDF mit Seiteneinstellungen

ExpertPdf-Einführung:

// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();
        
        // Set page size and orientation
        pdfConverter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4;
        pdfConverter.PdfDocumentOptions.PdfPageOrientation = PdfPageOrientation.Portrait;
        
        // Convert URL to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromUrl("https://www.example.com");
        
        // Save to file
        System.IO.File.WriteAllBytes("webpage.pdf", pdfBytes);
        
        Console.WriteLine("PDF from URL created successfully!");
    }
}

IronPDF-Implementierung:

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

class Program
{
    static void Main()
    {
        // Create a PDF renderer
        var renderer = new ChromePdfRenderer();
        
        // Set page size and orientation
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
        
        // Convert URL to PDF
        var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
        
        // Save to file
        pdf.SaveAs("webpage.pdf");
        
        Console.WriteLine("PDF from URL created successfully!");
    }
}

IronPDFs RenderingOptions bietet direkten Zugriff auf Eigenschaften für die Seitenkonfiguration. Weitere Optionen finden Sie in der URL zur PDF-Dokumentation.

Kopf- und Fußzeilen mit Seitenzahlen

Dieses Beispiel zeigt den wesentlichen Unterschied in der Konfiguration von Kopf- und Fußzeilen: ExpertPdfverwendet separate PdfHeaderOptions- und PdfFooterOptions-Klassen mit &P;-Tokens, während IronPDFTextHeaderFooter mit {total-pages}-Platzhaltern verwendet.

ExpertPdf-Einführung:

// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();
        
        // Enable header
        pdfConverter.PdfHeaderOptions.ShowHeader = true;
        pdfConverter.PdfHeaderOptions.HeaderText = "Document Header";
        pdfConverter.PdfHeaderOptions.HeaderTextAlignment = HorizontalTextAlign.Center;
        
        // Enable footer with page numbers
        pdfConverter.PdfFooterOptions.ShowFooter = true;
        pdfConverter.PdfFooterOptions.FooterText = "Page &p; of &P;";
        pdfConverter.PdfFooterOptions.FooterTextAlignment = HorizontalTextAlign.Right;
        
        // Convert HTML file to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlFile("input.html");
        
        // Save to file
        System.IO.File.WriteAllBytes("output-with-header-footer.pdf", pdfBytes);
        
        Console.WriteLine("PDF with headers and footers created successfully!");
    }
}

IronPDF-Implementierung:

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

class Program
{
    static void Main()
    {
        // Create a PDF renderer
        var renderer = new ChromePdfRenderer();
        
        // Configure header
        renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
        {
            CenterText = "Document Header",
            DrawDividerLine = true
        };
        
        // Configure footer with page numbers
        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            RightText = "Page {page} of {total-pages}",
            DrawDividerLine = true
        };
        
        // Convert HTML file to PDF
        var pdf = renderer.RenderHtmlFileAsPdf("input.html");
        
        // Save to file
        pdf.SaveAs("output-with-header-footer.pdf");
        
        Console.WriteLine("PDF with headers and footers created successfully!");
    }
}

IronPDFs TextHeaderFooter bietet LeftText-, CenterText- und RightText-Eigenschaften mit optionalen Trennlinien. Für HTML-basierte Kopfzeilen verwenden Sie HtmlHeaderFooter. Weitere Optionen finden Sie in der Kopf- und Fußzeilen-Dokumentation.

Kritische Hinweise zur Migration

Standort des Lizenzschlüssels

ExpertPdf verwendet eine Lizenzierung pro Konverter.IronPDF verwendet eine einzige globale Lizenz, die einmal beim Start festgelegt wird:

// ExpertPdf- per converter
pdfConverter.LicenseKey = "EXPERTPDF-LICENSE";

//IronPDF- global, set once
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
C#

Konvertierung von Seitennummerierungstoken

Ersetzen Sie ExpertPdf-Tokens durch IronPDF-Platzhalter:

// ExpertPdf
"Page &p; of &P;"

// IronPDF
"Page {page} of {total-pages}"

Fragmentierte Pakete konsolidiert

Die separaten Pakete von ExpertPdf(PDFMerge, PDFSecurity, PDFSplit, PdfToImage) sind alle im Einzelpaket von IronPDF enthalten:

// ExpertPdf- requires separate ExpertPdf.MergePdf package
PDFMerge merger = new PDFMerge();
merger.AppendPDFFile("file1.pdf");
merger.AppendPDFFile("file2.pdf");
merger.SaveMergedPDFToFile("merged.pdf");

//IronPDF- included in main package
var pdf1 = PdfDocument.FromFile("file1.pdf");
var pdf2 = PdfDocument.FromFile("file2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
C#

Weitere Optionen zur Zusammenführung finden Sie in der PDF-Dokumentation zur Zusammenführung.

Benutzerdefinierte Seitengrößen

ExpertPdf verwendet Punkte.IronPDF arbeitet mit Millimetern. Konvertieren: points / 72 * 25.4 = mm

Post-Migrations-Checkliste

Überprüfen Sie nach Abschluss der Codemigration Folgendes:

  • Visueller Vergleich der generierten PDFs
  • Überprüfen Sie Kopf- und Fußzeilen sowie Seitenzahlen
  • Sicherheits-/Verschlüsselungseinstellungen testen
  • Zusammenführungsvorgänge validieren
  • Benutzerdefinierte Seitengrößen prüfen
  • Leistungsvergleich
  • Plattformübergreifende Tests
  • ExpertPdf-Lizenzdateien entfernen
  • Dokumentation aktualisieren

Zusätzliche Ressourcen


Die Migration von ExpertPdfzu IronPDF ersetzt knappe Dokumentation, veraltete Rendering-Pipelines und fragmentierte Produktlizenzierung durch eine aktiv gewartete Bibliothek auf der neuesten Chromium-Engine — das hält Ihre PDF-Erzeugung mit aktuellen Webstandards und modernen .NET-Zielen im Einklang.

Hinweis:: ExpertPDF ist eine eingetragene Marke ihres Eigentümers (Outside Software Inc.). Diese Seite ist nicht mitOutside Software Inc.verbunden, wird nicht von ihnen unterstützt oder gesponsert. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Besitzer. Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich zugängliche Informationen zum Zeitpunkt des Schreibens wider.
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 Handbücher.

...
Weiterlesen

Verwandte Artikel

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
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
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.