IRONSOFTWAREHOME
VIDEOS

Verwendung der IronPDF Engine in Docker | IronPDF

Curtis Chau
Curtis Chau
Updated: 19. Juli 2026

Am 27. Mai 2025 erwarb Apryse TallComponents. Neue Lizenzen für TallPDF.NET und PDFKit.NET werden nicht mehr angeboten, und Apryse leitet neue Käufer an das iText SDK (ebenfalls im Besitz von Apryse) weiter. Bestehende Kunden erhalten weiterhin Support, aber die Engine wird nur noch gewartet. Für Teams, die derzeit TallComponentsversenden, vermeidet die Planung einer Migration jetzt einen erzwungenen Wechsel später.

Dieser Leitfaden bietet einen Migrationspfad von TallComponentszu IronPDF, einschließlich schrittweiser Anleitungen, API-Zuordnungen und Codebeispielen for .NET-Entwickler, die den Übergang planen.

Warum eine TallComponents-Migration planen

TallComponents (gegründet 2001) lieferte zwei Hauptprodukte for .NET PDF: PDFKit.NET zum Laden und Bearbeiten von PDFs und TallPDF.NET für die layoutorientierte Dokumentenerstellung. Nach der Übernahme durch Apryse wurden neue Lizenzverkäufe beendet, was den Planungshorizont für Teams, die von der Bibliothek abhängig sind, verändert.

Wichtige TallComponents-Einschränkungen heute

Geschlossen für neue Lizenzen: Die TallComponents-Seite von Apryse gibt an, dass keine neuen Lizenzen für TallComponents-Produkte mehr angeboten werden und neue Käufer an das iText SDK geleitet werden. Bestehende Lizenzinhaber werden weiterhin unterstützt.

Nur-XHTML-HTML-Pipeline: TallPDF.NET enthält eine XhtmlParagraph Klasse, die XHTML 1.0 Strict / XHTML 1.1 +CSS 2.1parst. PDFKit.NET hat von sich aus keine HTML-Pipeline. Moderner HTML5 + CSS3 + JavaScript-Inhalt wird nicht zuverlässig dargestellt - es gibt keinen Headless-Browser-Engine in der Box.

Eingefrorenes Plattformziel: TallComponents.PDFKit5 zielt auf .NET Standard 2.0 ab; die ältere TallComponents.PDFKit (4.x) zielt auf .NET Framework 2.0. Es gibt keine veröffentlichte .NET 8/9 TFM.

Wartungs-only-Roadmap: Mit Apryses Entwicklungsenergie, die sich auf das Apryse SDK und iText konzentriert, erhalten TallComponents-gebrandete Pakete Wartungsupdates, aber keine neuen Funktions-Roadmaps.

IronPDF: Eine moderne TallComponents-Alternative

IronPDF adressiert die wesentlichen Lücken, die TallComponents-Benutzer auf aktuellen .NET-Stacks betreffen:

FeatureTallComponentsIronPDF
Aktueller VerkaufsstatusGeschlossen für neue Lizenzen (Apryse übernommen 2025-05-27)Aktiv verkauft
HTML-zu-PDF-UnterstützungXHTML 1.0/1.1 +CSS 2.1via XhtmlParagraph (TallPDF.NET)Ja (HTML5/CSS3 mit Chromium)
JavaScriptin HTMLNeinVollständiger ES2024
InstallationNuGet (TallComponents.PDFKit5, TallComponents.TallPDF5)NuGet (IronPdf)
KundensupportNur für bestehende Kunden; neue Käufer an iText geleitetAktiver Support und Community
Zukünftige InvestitionNur WartungLangfristige Roadmap

TallComponents verwendet ein XML/layoutorientiertes Modell aus einer früheren Ära der .NET-Dokumentenerstellung, während IronPDF ein Chromium-basiertes HTML-Rendering bietet, das anpassbar ist, um Frontend-Anwendungen zu erstellen.

Schnellstart: TallComponentszu IronPDF Migration

Schritt 1: Ersetzen von NuGet-Paketen

Entferne die TallComponents-Pakete, auf die sich Ihr Projekt bezieht. Die echten Paket-IDs auf nuget.org sind TallComponents.PDFKit5 (oder TallComponents.PDFKit für 4.x) und TallComponents.TallPDF5 / TallPDF6:

# Remove TallComponentspackages (whichever your project uses)
dotnet remove package TallComponents.PDFKit5
dotnet remove package TallComponents.TallPDF5
dotnet remove package TallComponents.PDFRasterizer4
SHELL

IronPDF installieren:

dotnet add package IronPdf

Für spezielle Frameworks bietet IronPDF spezielle Erweiterungspakete an:

Blazor -Server:

PM > Install-Package IronPdf.Extensions.Blazor

MAUI:

PM > Install-Package IronPdf.Extensions.Maui

MVC-Framework:

PM > Install-Package IronPdf.Extensions.Mvc.Framework

Schritt 2: Namespaces aktualisieren

Ersetze TallComponents-Namensräume durch den IronPDF-Namespace:

// Before (TallComponents — real namespaces)
using TallComponents.PDF;                    // Document, Page (PDFKit.NET)
using TallComponents.PDF.Shapes;             // TextShape, ImageShape (PDFKit)
using TallComponents.PDF.Security;           // PasswordSecurity
using TallComponents.PDF.Layout;             // Document, Section (TallPDF.NET)
using TallComponents.PDF.Layout.Paragraphs;  // TextParagraph, XhtmlParagraph

// After (IronPDF)
using IronPdf;

Schritt 3: Initialisieren Sie Ihre Lizenz

Hinzufügen der Lizenzinitialisierung beim Start der Anwendung:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

TallComponentszu IronPDF API Mapping Referenz

Das Verständnis, wie TallComponents-Konzepte auf IronPDF abgebildet werden, beschleunigt den Migrationsprozess:

TallComponentsIronPDFNotizen
Document (TallPDF.NET: Layout)ChromePdfRendererRenderer für die PDF-Generierung erstellen
Document (PDFKit.NET: Manipulation)PdfDocumentVorhandene PDFs laden/bearbeiten
SectionAutomatischVon der HTML-Struktur abgeleitete Abschnitte
TextParagraphHTML-TextelementeVerwenden Sie <p>, <h1>, <div>, usw.
ImageParagraph<img> TagStandard-HTML-Bilder
TableParagraphHTML<table>Standard-HTML-Tabellen
XhtmlParagraph (XHTML 1.x + CSS 2.1)RenderHtmlAsPdf() (HTML5/CSS3 über Chromium)ModernesHTMLfunktioniert
FontCSS font-familyUnterstützte Webfonts
document.Write(...)pdf.SaveAs() / pdf.BinaryDataDatei- oder byte[]-Ausgabe
page.Overlay.Add(shape)pdf.ApplyStamp(stamper)Wasserzeichen / Overlay
outputDoc.Pages.Add(page.Clone())PdfDocument.Merge(...) / pdf.AppendPdf(...)Mehrere PDFs zusammenführen
Document.Security = new PasswordSecurity { ... }pdf.SecuritySettingsPDF-Sicherheitskonfiguration
PageLayoutRenderingOptionsSeiteneinstellungen und Ränder

Beispiele für die Code-Migration

Konvertierung vonHTMLin PDF

TallComponents verarbeitetHTMLüber den XhtmlParagraph von TallPDF.NET, der nur XHTML 1.0/1.1 +CSS 2.1parst. Modernes HTML5, CSS3, Flexbox, Grid und JavaScript-gesteuerte Inhalte fallen außerhalb dieser Grammatik.

TallComponents Ansatz:

// NuGet: Install-Package TallComponents.TallPDF5
// (HTML/XHTML conversion lives in TallPDF.NET, not in PDFKit.NET.)
using TallComponents.PDF.Layout;
using TallComponents.PDF.Layout.Paragraphs;
using System.IO;

class Program
{
    static void Main()
    {
        Document document = new Document();
        Section section = document.Sections.Add();

        // XhtmlParagraph supports XHTML 1.0/1.1 +CSS 2.1only.
        XhtmlParagraph xhtml = new XhtmlParagraph();
        xhtml.Text = "<html><body><h1>Hello World</h1><p>This is a PDF from XHTML.</p></body></html>";
        section.Paragraphs.Add(xhtml);

        using (FileStream fs = new FileStream("output.pdf", FileMode.Create))
        {
            document.Write(fs);
        }
    }
}
C#

IronPDF-Ansatz:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        // Create a PDF fromHTMLstring
        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");
    }
}
C#

Die ChromePdfRenderer von IronPDF verwendet eine echte Chromium-Engine, die vollständige HTML5- und CSS3-Unterstützung bietet. Das bedeutet, dass Ihre PDFs genau so wiedergegeben werden, wie sie in einem modernen Browser erscheinen würden. Erfahren Sie mehr im HTML zu PDF Tutorial.

Mehrere PDFs zusammenführen

Die PDF-Zusammenführung zeigt den Unterschied in der Ausführlichkeit zwischen TallComponentsund IronPDF.

TallComponents Ansatz:

// NuGet: Install-Package TallComponents.PDFKit5
using TallComponents.PDF;
using System.IO;

class Program
{
    static void Main()
    {
        // Create target document
        Document outputDoc = new Document();

        // Load first PDF and clone each page into the target
        using (FileStream fs1 = new FileStream("document1.pdf", FileMode.Open, FileAccess.Read))
        {
            Document doc1 = new Document(fs1);
            foreach (Page page in doc1.Pages)
            {
                outputDoc.Pages.Add(page.Clone()); // clone is required across documents
            }
        }

        // Load second PDF and append the whole page collection
        using (FileStream fs2 = new FileStream("document2.pdf", FileMode.Open, FileAccess.Read))
        {
            Document doc2 = new Document(fs2);
            outputDoc.Pages.AddRange(doc2.Pages.CloneToArray());
        }

        // Save merged document
        using (FileStream output = new FileStream("merged.pdf", FileMode.Create))
        {
            outputDoc.Write(output);
        }
    }
}

IronPDF-Ansatz:

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        // Load PDFs
        var pdf1 = PdfDocument.FromFile("document1.pdf");
        var pdf2 = PdfDocument.FromFile("document2.pdf");
        
        // Merge PDFs
        var merged = PdfDocument.Merge(pdf1, pdf2);
        
        // Save merged document
        merged.SaveAs("merged.pdf");
    }
}

Die TallComponents-Version erfordert manuelle Seitenwiederholung und Klonen.IronPDF reduziert dies auf einen einzigen PdfDocument.Merge() Aufruf. Für fortgeschrittene Zusammenführungsszenarien siehe die PDF-Zusammenführungsdokumentation.

Wasserzeichen hinzufügen

Das Wasserzeichen in PDFs zeigt einen weiteren signifikanten Unterschied in der Erfahrung von Entwicklern.

TallComponents Ansatz:

// NuGet: Install-Package TallComponents.PDFKit5
using TallComponents.PDF;
using TallComponents.PDF.Shapes;
using System.IO;
using System.Drawing;

class Program
{
    static void Main()
    {
        // Load existing PDF
        using (FileStream fs = new FileStream("input.pdf", FileMode.Open, FileAccess.Read))
        {
            Document document = new Document(fs);

            foreach (Page page in document.Pages)
            {
                TextShape watermark = new TextShape();
                watermark.Text = "CONFIDENTIAL";
                watermark.Font = new Font("Arial", 60);
                watermark.Pen = new Pen(Color.FromArgb(128, 255, 0, 0));
                watermark.X = 200;
                watermark.Y = 400;
                // Rotation is applied via a transform on PDFKit.NET
                // (TextShape has no Rotate property in the PDFKit API).
                watermark.Transform = new RotateTransform(45);

                page.Overlay.Add(watermark);
            }

            using (FileStream output = new FileStream("watermarked.pdf", FileMode.Create))
            {
                document.Write(output);
            }
        }
    }
}

IronPDF-Ansatz:

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

class Program
{
    static void Main()
    {
        // Load existing PDF
        var pdf = PdfDocument.FromFile("input.pdf");
        
        // Create watermark
        var watermark = new TextStamper()
        {
            Text = "CONFIDENTIAL",
            FontSize = 60,
            Opacity = 50,
            Rotation = 45,
            VerticalAlignment = VerticalAlignment.Middle,
            HorizontalAlignment = HorizontalAlignment.Center
        };
        
        // Apply watermark to all pages
        pdf.ApplyStamp(watermark);
        
        // Save watermarked PDF
        pdf.SaveAs("watermarked.pdf");
    }
}

Die TextStamper Klasse von IronPDF bietet intuitive Ausrichtungsoptionen und automatische Seiteniteration. Der Leitfaden für Stempel und Wasserzeichen behandelt zusätzliche Anpassungsmöglichkeiten.

Digitale Signaturen

Das Signieren von Dokumenten ist für Unternehmensanwendungen von entscheidender Bedeutung.

TallComponents Ansatz:

using TallComponents.PDF;
using TallComponents.PDF.Signing;
using System.IO;
using System.Security.Cryptography.X509Certificates;

using (FileStream fs = new FileStream("unsigned.pdf", FileMode.Open, FileAccess.Read))
{
    Document document = new Document(fs);

    X509Certificate2 cert = new X509Certificate2("certificate.pfx", "password");
    SignatureField field = new SignatureField("Signature1");
    field.Sign(cert);
    document.Fields.Add(field);

    using (FileStream output = new FileStream("signed.pdf", FileMode.Create))
    {
        document.Write(output);
    }
}

IronPDF-Ansatz:

using IronPdf;
using IronPdf.Signing;

var pdf = PdfDocument.FromFile("unsigned.pdf");

// Sign with certificate
var signature = new PdfSignature("certificate.pfx", "password")
{
    SigningContact = "support@company.com",
    SigningLocation = "New York",
    SigningReason = "Document Approval"
};

pdf.Sign(signature);
pdf.SaveAs("signed.pdf");

Die Signatur-API von IronPDF enthält zusätzliche Metadaten-Eigenschaften für Kontaktinformationen, den Standort und den Grund für die Unterzeichnung - wichtig für Prüfpfade. In der Dokumentation zur digitalen Signatur finden Sie ausführliche Informationen zur Implementierung.

Funktionsvergleich: TallComponentsgegen IronPDF

FeatureTallComponentsIronPDF
StatusGeschlossen für neue Lizenzen (Apryse übernommen 2025-05-27)Aktiv
UnterstützungNur für bestehende KundenVoll
AktualisierungenNur WartungRegelmäßige Funktionsveröffentlichungen
Inhaltserstellung
HTMLzu PDFXHTML 1.0/1.1 +CSS 2.1(XhtmlParagraph)Vollständiges HTML5/CSS3 über Chromium
URL zu PDFJa für XHTML URLs (XhtmlParagraph.Path)Ja
CSS-UnterstützungCSS 2.1Vollständig CSS3
JavaScriptNeinVollständiger ES2024
XML /Layout DOMVorlagenJa (TallPDF.NET)Nicht erforderlich (HTML)
PDF-Betrieb
PDFs zusammenführenJa (Pages.Add(page.Clone()))Ja (PdfDocument.Merge)
PDFs teilenJaJa
Wasserzeichenpage.Overlay.Add(TextShape)pdf.ApplyStamp(...)
Kopf-/FußzeilenLayout DOMHTML/CSS
Sicherheit
PasswortschutzJa (PasswordSecurity)Ja
Digitale SignaturenJa (SignatureField.Sign)Ja
VerschlüsselungRC4 / AES-128 / AES-256AES-128 / AES-256
PDF/APDF/A-1, PDF/A-2, PDF/A-3Ja
Plattform
Ziel-FrameworksPDFKit5: .NET Standard 2.0; PDFKit (4.x): .NET Framework 2.0.NET Framework 4.6.2+, .NET 6/7/8/9
Entwicklung
LernkurveXML / Layout DOMHTML
DokumentationBeim Erwerb eingefroren; Neue Dokumente leiten zu Apryse / iTextGepflegt
GemeinschaftStille (keine neuen Verkäufe)Aktiv

Checkliste für die Migration von TallComponents

Vor der Migration anfallende Aufgaben

Überprüfen Sie Ihre Codebasis, um die Verwendung von TallComponentszu identifizieren:

grep -r "using TallComponents" --include="*.cs" .
grep -rE "XhtmlParagraph|TextParagraph|PasswordSecurity|page\.Overlay" --include="*.cs" .
SHELL

Bestehende XML-Layout-Vorlagen dokumentieren—diese werden inHTMLkonvertiert. Identifizieren Sie die derzeit verwendeten Sicherheitseinstellungen und beachten Sie dabei Kennwortkonfigurationen und Implementierungen digitaler Signaturen.

Aufgaben der Code-Aktualisierung

  1. TallComponents-Pakete über NuGet entfernen
  2. IronPDF-Paket installieren
  3. XHTML- / Layout-DOM-Vorlagen in HTML5 konvertieren
  4. Ersetzen des Abschnitts-/Absatzmodells durch HTML-Elemente
  5. Aktualisierung des Tabellencodes zur Verwendung von Standard-HTML-Tabellen
  6. Konvertieren Sie Header/Footer inHTMLmit HtmlHeaderFooter
  7. Aktualisieren Sie die Sicherheitseinstellungen zur Verwendung von pdf.SecuritySettings
  8. Lizenzinitialisierung beim Start hinzufügen

Migration von Kopf- und Fußzeilen

TallPDF.NET verwendet ein Layout-DOM (Section.Header / Section.Footer) für Seitenheader.IronPDF bietet HTML-basierte Kopfzeilen mit dynamischen Platzhaltern:

renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center;'>Header Text</div>",
    MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center;'>Footer Text</div>",
    MaxHeight = 25
};

Erfahren Sie mehr über Kopf- und Fußzeilen in IronPDF.

Testphase

  1. Vergleich der visuellen Ausgabe zwischen TallComponents- und IronPDF-Versionen
  2. Alle Dokumentvorlagen testen
  3. PDF-Zusammenführungsfunktionalität validieren
  4. Digitale Signaturen testen
  5. Bestätigen, dass Sicherheitseinstellungen korrekt angewendet werden

Empfohlener Zeitplan für die Migration

Da TallComponentsgeschlossen ist für neue Lizenzen und nur auf Wartungs-Support, planen Sie den Umzug in Ihrem eigenen Tempo, aber zögern Sie nicht.

Woche 1: Codebasis prüfen und alle Verwendungen von TallComponentsidentifizieren
Woche 2: XHTML- / Layout-Vorlagen in HTML5 konvertieren Woche 3: Sicherheitsupdates, Zusammenführung und Signierung des Codes
Woche 4: Test und Produktionsbereitstellung

Je länger ein Stack auf TallComponentsbleibt, desto weiter entfernt er sich von aktuellen .NET-Zielen und aktuellem HTML.

Hinweis:: Apryse, PDFKit, Tall Components und iText sind eingetragene Warenzeichen ihrer jeweiligen Inhaber. Diese Website ist nicht verbunden mit, unterstützt oder gesponsert durch Apryse, PDFKit, PDFTron, TallComponentsoder iText Group. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Inhaber. 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.