Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE

`CraftMy`PDF vs IronPDF: Welche PDF-Generierungsbibliothek eignet sich für C#-Entwickler?

IronPDF bietet eine Code-First-HTML-zu-PDF-Konvertierung mit vollständiger CSS/JavaScript-Unterstützung und unbefristeter Lizenzierung ab 749 US-Dollar, während CraftMy PDF eine cloudbasierte Vorlagenerstellung mit JSON-Integration bietet, jedoch laufende Abonnements und API-Abhängigkeiten erfordert.

CraftMyPDF bietet einen cloudbasierten Drag-and-Drop-Vorlagendesigner mit JSON-Datenintegration, während IronPDF eine Code-First- HTML-zu-PDF-Konvertierung mit vollständiger CSS/JavaScript-Unterstützung für .NET-Entwickler bietet, die die vollständige Kontrolle über die Dokumentgenerierung anstreben.

PDF , oder Portable Document Format, ist ein von Adobe entwickeltes Dateiformat für den Dokumentenaustausch. Es erhält Formatierungen, Schriftarten und Bilder geräteübergreifend und gewährleistet so ein einheitliches Erscheinungsbild. PDFs unterstützen Sicherheitsfunktionen , Interaktivität und Komprimierung und eignen sich daher ideal für den zuverlässigen Austausch von Dokumenten .

C# PDF-Bibliotheken ermöglichen es Entwicklern, Inhalte aus PDFs programmatisch zu erstellen , zu ändern und zu extrahieren. Diese Tools unterstützen Formularverarbeitung , digitale Signaturen und plattformübergreifende Bereitstellung . Durch die Integration von PDF-Bibliotheken können Entwickler Funktionen zur Dokumentengenerierung direkt in ihre Anwendungen einbinden und die Arbeitsabläufe für das Erstellen , Bearbeiten und Verwalten von PDFs vereinfachen.

Dieser Artikel vergleicht zwei verschiedene Ansätze zur PDF-Generierung: die IronPDF C#-Bibliothek und die Craftmypdf-API . Der Vergleich untersucht Funktionen, liefert Codebeispiele und erörtert Lizenzierungsoptionen .

Was ist CraftMyPDF API-Basislösung?

Die CraftMyPDF-Homepage zeigt die Drag-and-Drop-Oberfläche des PDF-Editors, wobei eine Packlistenvorlage in Echtzeit bearbeitet wird.

CraftMyPDF ist eine cloudbasierte API zur Erstellung von PDFs mithilfe von Vorlagen. Es bietet einen webbasierten Drag-and-Drop-Editor zum Entwerfen wiederverwendbarer Vorlagen ohne Programmierung. Die Plattform generiert PDFs, indem sie diese Vorlagen mit JSON-Daten zusammenführt und so die dynamische Inhaltsgenerierung für Dokumente wie Rechnungen , Berichte und Zertifikate unterstützt.

Was sind die wichtigsten Funktionen von CraftMyPDF ?

  1. Drag-and-Drop-Editor: Visueller Vorlagendesigner, der keine Programmierkenntnisse erfordert.

  2. Wiederverwendbarkeit der Vorlage: Einmal entwerfen, wiederholt mit unterschiedlichen Datensätzen verwenden.

  3. JSON-Datenintegration: Dynamische Daten über JSON mit Vorlagen zusammenführen.

  4. Erweiterte Formatierung und Ausdrücke: Datumsangaben, Zahlen und Währungen dynamisch formatieren.

  5. API-Integrationen: Die REST-API unterstützt Zapier, Make.com und benutzerdefinierte Anwendungen.

  6. Ausfüllbare Komponenten: Erstellen Sie interaktive Formulare mit Textfeldern und Kontrollkästchen.

  7. Sicherheit und Compliance: Sicherer PDF-Zugriff mit regionalen API-Endpunkten und DSGVO-Konformität.

Was ist IronPDF?

IronPDF PDF Library for .NET Developers ist eine vollständige PDF-Bibliothek für .NET-Anwendungen. Es ist in C# geschrieben und generiert pixelgenaue PDFs aus HTML , CSS , JavaScript und Bildern . IronPDF vereinfacht PDF-Workflows durch die Bereitstellung umfangreicher Funktionen zum Erstellen, Bearbeiten und Verwalten von PDFs innerhalb von .NET-Umgebungen .

Was sind die wichtigsten Funktionen von IronPDF?

  1. HTML-zu-PDF-Konvertierung: Konvertieren Sie HTML, CSS und JavaScript pixelgenau in PDFs.

  2. URL zu PDF: Generieren Sie PDFs aus beliebigen URLs , wobei der Inhalt und das responsive Design erhalten bleiben.

  3. Bild zu PDF: Konvertieren Sie JPG-, PNG-, GIF-, BMP- und SVG- Dateien in PDF-Dokumente mit Unterstützung für TIFF-Dateien mit mehreren Einzelbildern .

  4. Formularausfüllung und Datenextraktion: Programmatisches Erstellen und Ausfüllen von PDF-Formularen mit benutzerdefinierter Validierung .

  5. Digitale Signaturen und Sicherheit: Digitale Signaturen , Passwörter und Berechtigungen mit HSM-Unterstützung hinzufügen.

  6. PDF-Bearbeitung: Seiten hinzufügen, kopieren oder löschen . PDFs zusammenführen und teilen mit Seitenrotationsfunktion .

  7. Anmerkungen und Anhänge: Fügen Sie Haftnotizen hinzu und betten Sie Anhänge mit benutzerdefinierten Metadaten ein.

  8. Kopf- und Fußzeilen sowie Wasserzeichen: Benutzerdefinierte Kopf- und Fußzeilen sowie Wasserzeichen mithilfe von HTML-Vorlagen anwenden.

  9. Plattformübergreifende Kompatibilität: Funktioniert unter Windows , macOS , Linux , Docker , Azure und AWS .

  10. Leistungsoptimierung: Unterstützung von Multithreading und asynchroner Verarbeitung für die Generierung großer Datenmengen mit paralleler Verarbeitung .

  11. Vollständige Dokumentation: Umfangreiche Anleitungen , Tutorials und technischer Support rund um die Uhr an 5 Tagen in der Woche .

  12. Keine externen Abhängigkeiten: Bereitstellung einer einzigen DLL ohne zusätzliche Softwareanforderungen unter Verwendung der nativen Rendering-Engine .

Wie erstelle ich eine C#-Anwendung in Visual Studio?

Für die Erstellung einer C#-Konsolenanwendung muss Visual Studio auf dem Computer installiert sein. Führen Sie die folgenden Schritte aus, um das Projekt einzurichten:

Wie öffne ich Visual Studio?

Starten Sie Visual Studio über das Startmenü oder das Desktop-Symbol.

Wie erstelle ich ein neues Projekt?

  1. Klicken Sie auf der Startseite auf "Neues Projekt erstellen" .
  2. Suchen Sie nach "Konsolen-App" oder wählen Sie eine aus der Vorlagenliste aus.

Wie wähle ich die Projektvorlage aus?

Wählen Sie je nach Anforderungen "Konsolenanwendung (.NET Core)" oder "Konsolenanwendung (.NET Framework)" aus. Für die .NET MAUI-Unterstützung wählen Sie geeignete MAUI-Vorlagen aus.

Wie konfiguriere ich mein Projekt?

  1. Projektname: Geben Sie den Projektnamen ein
  2. Speicherort: Wählen Sie das Speicherverzeichnis.
  3. Lösungsname: Entspricht in der Regel dem Projektnamen
  4. Klicken Sie auf "Erstellen" , um fortzufahren.

Wie installiere ich IronPDF?

IronPDF bietet drei Installationsmethoden an: NuGet Package Manager , Package Manager Console und direkter Download. Die Bibliothek unterstützt Windows , macOS , Linux und Cloud-Bereitstellungen .

Wie verwende ich den NuGet-Paketmanager?

Klicken Sie in Visual Studio mit der rechten Maustaste im Projektmappen-Explorer auf "Verweise" oder "Abhängigkeiten". Wählen Sie "NuGet-Pakete verwalten", suchen Sie nach "IronPDF" und klicken Sie auf "Installieren".

Der Visual Studio NuGet-Paketmanager zeigt Suchergebnisse für IronPDF an. Die Hauptversion von IronPDF (2024.5.2) ist installiert, und zugehörige Pakete wie IronPdf.Native.Chrome.Windows und IronPdf.Slim sind sichtbar.

Wie verwende ich die NuGet-Paket-Manager-Konsole?

Öffnen Sie "Tools" > "NuGet-Paket-Manager" > "Paket-Manager-Konsole" und führen Sie Folgendes aus:

Install-Package IronPdf

Wie lade ich von der NuGet-Website herunter?

Besuchen Sie die NuGet-Website , laden Sie die Paketdatei herunter und fügen Sie sie in Visual Studio als Paketquelle hinzu. Für Docker-Bereitstellungen müssen spezifische Containerkonfigurationen verwendet werden.

Eine detaillierte Anleitung finden Sie in der Installationsübersicht und der erweiterten NuGet-Konfiguration .

Wie benutze ich CraftMyPDF ?

Um CraftMyPDF zu integrieren, erstellen Sie ein Konto, wählen Sie einen Tarif aus und beschaffen Sie sich API-Zugangsdaten.

Wie erstelle ich ein Konto und wähle den kostenlosen Tarif aus?

  1. Anmeldung: Registrieren Sie sich auf der CraftMyPDF-Website.
  2. Kostenloser Tarif auswählen: Wählen Sie den kostenlosen Tarif für Entwicklung und Tests.
  3. API-Schlüssel abrufen: Sie können den API-Schlüssel im Konto-Dashboard abrufen.

Das CraftMyPDF-Dashboard zeigt Details zum kostenlosen Abonnement, den Verbrauch von 6/50 Credits und das aktuelle Änderungsprotokoll mit neuen Funktionen wie Signaturfeldern und Fehlerbehebungen.

Welche Bibliotheken muss ich installieren?

Installieren Sie die Pakete System.Net.Http , RestSharp und Newtonsoft.Json :

using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using RestSharp;
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using RestSharp;
$vbLabelText   $csharpLabel

Initialisieren Sie den API-Client:

var client = new RestClient("___PROTECTED_URL_51___");
var request = new RestRequest(Method.Post);
string apiKey = "API Key"; // Replace with your actual API key
string templateId = "Template ID"; // Replace with your actual template ID
request.AddHeader("X-API-KEY", apiKey);
request.AddHeader("Content-Type", "application/json");
var client = new RestClient("___PROTECTED_URL_51___");
var request = new RestRequest(Method.Post);
string apiKey = "API Key"; // Replace with your actual API key
string templateId = "Template ID"; // Replace with your actual template ID
request.AddHeader("X-API-KEY", apiKey);
request.AddHeader("Content-Type", "application/json");
$vbLabelText   $csharpLabel

Wie erstelle ich PDFs?

Beide Bibliotheken bieten unterschiedliche Ansätze zur PDF-Erstellung. IronPDF verwendet codebasiertes HTML-Rendering , während CraftMyPDF visuelle Vorlagen mit Datenbindung nutzt. IronPDF unterstützt auch die Konvertierung von Markdown zu PDF und von XML zu PDF .

Wie erstelle ich PDFs mit IronPDF?

Wie konvertiere ich HTML in PDF?

Konvertieren Sie HTML-Strings direkt in PDF mit voller CSS-Unterstützung und JavaScript-Rendering :

using IronPdf;
public class PDFCreator
{
    public void CreatePdfFromHtml()
    {
        var renderer = new ChromePdfRenderer();
        // Define your HTML string
        string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a sample PDF document created from an HTML string.</p>";
        // Render the HTML as a PDF document
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF document
        pdfDocument.SaveAs("html_output.pdf");
    }
}
using IronPdf;
public class PDFCreator
{
    public void CreatePdfFromHtml()
    {
        var renderer = new ChromePdfRenderer();
        // Define your HTML string
        string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a sample PDF document created from an HTML string.</p>";
        // Render the HTML as a PDF document
        var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF document
        pdfDocument.SaveAs("html_output.pdf");
    }
}
$vbLabelText   $csharpLabel

Screenshot eines von IronPDF generierten PDF-Dokuments mit der Überschrift "Hallo, IronPDF!" und Beispieltext zur Veranschaulichung der HTML-zu-PDF-Konvertierung.

Weitere Beispiele finden Sie auf der Seite "HTML zu PDF Beispiele" . Entwickler können außerdem benutzerdefinierte Ränder festlegen , Seitenumbrüche hinzufügen und das Papierformat konfigurieren .

Wie konvertiere ich eine URL in ein PDF?

Webseiten in PDFs konvertieren und dabei sämtliche Formatierungen, einschließlich WebGL-Inhalte und responsivem CSS , beibehalten:

using IronPdf;
public class PDFCreator
{
    public void CreatePdfFromUrl(string url)
    {
        // Initialize the ChromePdfRenderer
        var renderer = new ChromePdfRenderer();
        // Render the URL as a PDF document
        var pdfDocument = renderer.RenderUrlAsPdf(url);
        // Save the PDF document
        pdfDocument.SaveAs("url_output.pdf");
    }
}
using IronPdf;
public class PDFCreator
{
    public void CreatePdfFromUrl(string url)
    {
        // Initialize the ChromePdfRenderer
        var renderer = new ChromePdfRenderer();
        // Render the URL as a PDF document
        var pdfDocument = renderer.RenderUrlAsPdf(url);
        // Save the PDF document
        pdfDocument.SaveAs("url_output.pdf");
    }
}
$vbLabelText   $csharpLabel

Die IronPDF-Homepage zeigt ein C#-Codebeispiel für die HTML-zu-PDF-Konvertierung mit ChromePdfRenderer in C#, mit 9.229.207 NuGet-Downloads und den wichtigsten Funktionen der Bibliothek.

Erfahren Sie mehr über die URL-zu-PDF-Konvertierung . Informationen zu authentifizierten Seiten finden Sie unter TLS-Website-Logins und HTTP-Anforderungsheadern .

Wie konvertiere ich eine HTML-Datei in eine PDF-Datei?

Konvertierung lokaler HTML-Dateien in PDFs mit Unterstützung für CSS-Medientypen und Basis-URLs :

using IronPdf;
public class PDFCreator
{
    public void CreatePdfFromHtmlFile(string filePath)
    {
        // Initialize the ChromePdfRenderer
        var renderer = new ChromePdfRenderer();
        // Render the HTML file as a PDF document
        var pdfDocument = renderer.RenderHtmlFileAsPdf(filePath);
        // Save the PDF document
        pdfDocument.SaveAs("html_file_output.pdf");
    }
}
using IronPdf;
public class PDFCreator
{
    public void CreatePdfFromHtmlFile(string filePath)
    {
        // Initialize the ChromePdfRenderer
        var renderer = new ChromePdfRenderer();
        // Render the HTML file as a PDF document
        var pdfDocument = renderer.RenderHtmlFileAsPdf(filePath);
        // Save the PDF document
        pdfDocument.SaveAs("html_file_output.pdf");
    }
}
$vbLabelText   $csharpLabel

Weitere Informationen finden Sie in der Anleitung zur Umwandlung von HTML-Dateien in PDF-Dateien . Bei HTML-ZIP-Dateien übernimmt IronPDF die Extraktion automatisch.

Wie erstelle ich PDFs mit CraftMyPDF -API?

CraftMyPDF erfordert, dass zuerst Vorlagen erstellt werden, anschließend werden die PDFs durch Zusammenführen der Daten generiert.

Wie erstelle ich eine Vorlage?

  1. Melden Sie sich im Dashboard an: Greifen Sie auf Ihr CraftMyPDF -Konto zu.
  2. Neue Vorlage erstellen: Verwenden Sie den Drag-and-Drop-Editor zum Entwerfen.
  3. Vorlage speichern: Die Vorlagen-ID für API-Aufrufe abrufen.

Das CraftMyPDF-Vorlagenverwaltungs-Dashboard zeigt eine Rechnungsvorlage mit Bearbeitungswerkzeugen und Tutorial-Ressourcen.

Wie sende ich eine Anfrage zur PDF-Generierung?

Generieren Sie PDFs, indem Sie JSON-Daten an die Vorlage senden:

using System;
using System.Net;
using System.Threading.Tasks;
using RestSharp;

class Program
{
    static async Task Main(string[] args)
    {
        var client = new RestClient("___PROTECTED_URL_52___");
        var request = new RestRequest(Method.Post);
        string apiKey = "API-Key"; // Replace with your actual API key
        string templateId = "Template-ID"; // Replace with your actual template ID
        request.AddHeader("X-API-KEY", apiKey);
        request.AddHeader("Content-Type", "application/json");
        var body = new
        {
            data = new
            {
                invoice_number = "INV48321",
                date = "2024-05-27",
                due_date = "2024-06-27",
                currency = "EUR",
                discount = 10,
                tax = 5,
                company_name = "Tech Innovations Ltd",
                email = "contact@techinnovations.com",
                client = "Future Solutions GmbH",
                client_address = "1234 Innovation Drive",
                client_address2 = "Berlin",
                client_address3 = "10115",
                items = new[]
                {
                    new { description = "Cloud Hosting Services", quantity = 12, unit_price = 75, total = 900 },
                    new { description = "Custom Web Application", quantity = 3, unit_price = 150, total = 450 },
                    new { description = "Technical Support", quantity = 15, unit_price = 30, total = 450 },
                    new { description = "Digital Marketing Campaign", quantity = 2, unit_price = 500, total = 1000 },
                    new { description = "SEO Optimization", quantity = 5, unit_price = 120, total = 600 }
                },
                gross_total = 3400
            },
            load_data_from = (string)null,
            template_id = templateId,
            version = 8,
            export_type = "json",
            expiration = 60,
            output_file = "output.pdf",
            is_cmyk = false,
            image_resample_res = 600,
            direct_download = 0,
            cloud_storage = 1
        };
        request.AddJsonBody(body);
        RestResponse response = await client.ExecuteAsync(request);
        Console.WriteLine(response.Content);
        if (response.IsSuccessful)
        {
            var content = response.Content;
            dynamic result = Newtonsoft.Json.JsonConvert.DeserializeObject(content);
            string fileUrl = result.file;
            string localPath = "f:\\downloaded_output.pdf";
            using (WebClient webClient = new WebClient())
            {
                webClient.DownloadFile(fileUrl, localPath);
            }
            Console.WriteLine($"PDF downloaded successfully to {localPath}");
        }
        else
        {
            Console.WriteLine($"Error: {response.Content}");
        }
    }
}
using System;
using System.Net;
using System.Threading.Tasks;
using RestSharp;

class Program
{
    static async Task Main(string[] args)
    {
        var client = new RestClient("___PROTECTED_URL_52___");
        var request = new RestRequest(Method.Post);
        string apiKey = "API-Key"; // Replace with your actual API key
        string templateId = "Template-ID"; // Replace with your actual template ID
        request.AddHeader("X-API-KEY", apiKey);
        request.AddHeader("Content-Type", "application/json");
        var body = new
        {
            data = new
            {
                invoice_number = "INV48321",
                date = "2024-05-27",
                due_date = "2024-06-27",
                currency = "EUR",
                discount = 10,
                tax = 5,
                company_name = "Tech Innovations Ltd",
                email = "contact@techinnovations.com",
                client = "Future Solutions GmbH",
                client_address = "1234 Innovation Drive",
                client_address2 = "Berlin",
                client_address3 = "10115",
                items = new[]
                {
                    new { description = "Cloud Hosting Services", quantity = 12, unit_price = 75, total = 900 },
                    new { description = "Custom Web Application", quantity = 3, unit_price = 150, total = 450 },
                    new { description = "Technical Support", quantity = 15, unit_price = 30, total = 450 },
                    new { description = "Digital Marketing Campaign", quantity = 2, unit_price = 500, total = 1000 },
                    new { description = "SEO Optimization", quantity = 5, unit_price = 120, total = 600 }
                },
                gross_total = 3400
            },
            load_data_from = (string)null,
            template_id = templateId,
            version = 8,
            export_type = "json",
            expiration = 60,
            output_file = "output.pdf",
            is_cmyk = false,
            image_resample_res = 600,
            direct_download = 0,
            cloud_storage = 1
        };
        request.AddJsonBody(body);
        RestResponse response = await client.ExecuteAsync(request);
        Console.WriteLine(response.Content);
        if (response.IsSuccessful)
        {
            var content = response.Content;
            dynamic result = Newtonsoft.Json.JsonConvert.DeserializeObject(content);
            string fileUrl = result.file;
            string localPath = "f:\\downloaded_output.pdf";
            using (WebClient webClient = new WebClient())
            {
                webClient.DownloadFile(fileUrl, localPath);
            }
            Console.WriteLine($"PDF downloaded successfully to {localPath}");
        }
        else
        {
            Console.WriteLine($"Error: {response.Content}");
        }
    }
}
$vbLabelText   $csharpLabel

Die Visual Studio-Debugkonsole zeigt die erfolgreiche PDF-Generierung der CraftMyPDF-API mit JSON-Antwortdetails an.

Generierte PDF-Ausgabe:

Rechnung der Tech Innovations Ltd. über diverse Technologiedienstleistungen, darunter SEO, digitales Marketing, technischer Support, Webanwendungen und Cloud-Hosting, mit einem Gesamtbetrag von 2.907,00 € nach Abzug von Rabatt und Steuern.

Wie kann ich mit Bootstrap professionelle Rechnungen erstellen?

IronPDF rendert moderne Frameworks ohne externe Abhängigkeiten. Dieses Bootstrap-5-Beispiel demonstriert die professionelle Rechnungserstellung mit responsivem Design und Druck-CSS :

using IronPdf;

var renderer = new ChromePdfRenderer();

string professionalInvoice = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='___PROTECTED_URL_53___ rel='stylesheet'>
    <style>
        .invoice-header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; }
        .invoice-table th { background: #f8f9fa; }
        @media print { .invoice-box { page-break-inside: avoid; } }
    </style>
</head>
<body>
    <div class='container my-4'>
        <div class='card shadow-lg invoice-box'>
            <div class='invoice-header p-4'>
                <div class='row align-items-center'>
                    <div class='col-md-8'>
                        <h1 class='mb-0'>INVOICE</h1>
                        <p class='mb-0 opacity-75'>Invoice #INV-2024-0427</p>
                    </div>
                    <div class='col-md-4 text-md-end'>
                        <h3 class='mb-0'>$3,400.00</h3>
                        <small class='opacity-75'>Due: June 27, 2024</small>
                    </div>
                </div>
            </div>

            <div class='card-body p-4'>
                <div class='row mb-4'>
                    <div class='col-md-6'>
                        <h6 class='text-primary text-uppercase mb-2'>From</h6>
                        <strong>Tech Innovations Ltd</strong><br>
                        contact@techinnovations.com
                    </div>
                    <div class='col-md-6 text-md-end'>
                        <h6 class='text-primary text-uppercase mb-2'>Bill To</h6>
                        <strong>Future Solutions GmbH</strong><br>
                        1234 Innovation Drive<br>
                        Berlin, 10115
                    </div>
                </div>

                <table class='table invoice-table'>
                    <thead>
                        <tr>
                            <th>Description</th>
                            <th class='text-center'>Qty</th>
                            <th class='text-end'>Unit Price</th>
                            <th class='text-end'>Total</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>Cloud Hosting Services</td>
                            <td class='text-center'>12</td>
                            <td class='text-end'>€75.00</td>
                            <td class='text-end'>€900.00</td>
                        </tr>
                        <tr>
                            <td>Custom Web Application</td>
                            <td class='text-center'>3</td>
                            <td class='text-end'>€150.00</td>
                            <td class='text-end'>€450.00</td>
                        </tr>
                        <tr>
                            <td>Technical Support</td>
                            <td class='text-center'>15</td>
                            <td class='text-end'>€30.00</td>
                            <td class='text-end'>€450.00</td>
                        </tr>
                        <tr>
                            <td>Digital Marketing Campaign</td>
                            <td class='text-center'>2</td>
                            <td class='text-end'>€500.00</td>
                            <td class='text-end'>€1,000.00</td>
                        </tr>
                        <tr>
                            <td>SEO Optimization</td>
                            <td class='text-center'>5</td>
                            <td class='text-end'>€120.00</td>
                            <td class='text-end'>€600.00</td>
                        </tr>
                    </tbody>
                </table>

                <div class='row justify-content-end'>
                    <div class='col-md-4'>
                        <table class='table table-sm'>
                            <tr>
                                <td>Subtotal:</td>
                                <td class='text-end'><strong>€3,400.00</strong></td>
                            </tr>
                            <tr>
                                <td>Discount (10%):</td>
                                <td class='text-end text-success'>-€340.00</td>
                            </tr>
                            <tr>
                                <td>Tax (5%):</td>
                                <td class='text-end'>€153.00</td>
                            </tr>
                            <tr class='table-primary'>
                                <td><strong>Total Due:</strong></td>
                                <td class='text-end'><strong>€3,213.00</strong></td>
                            </tr>
                        </table>
                    </div>
                </div>

                <div class='alert alert-info mt-4'>
                    <strong>Payment Terms:</strong> Payment due within 30 days. Late payments may incur additional charges.
                </div>

                <div class='row mt-4 pt-3 border-top'>
                    <div class='col-md-6'>
                        <small class='text-muted'>Generated with IronPDF - No external APIs required</small>
                    </div>
                    <div class='col-md-6 text-md-end'>
                        <span class='badge bg-success'>PAID</span>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(professionalInvoice);
pdf.SaveAs("professional-invoice.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string professionalInvoice = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='___PROTECTED_URL_53___ rel='stylesheet'>
    <style>
        .invoice-header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; }
        .invoice-table th { background: #f8f9fa; }
        @media print { .invoice-box { page-break-inside: avoid; } }
    </style>
</head>
<body>
    <div class='container my-4'>
        <div class='card shadow-lg invoice-box'>
            <div class='invoice-header p-4'>
                <div class='row align-items-center'>
                    <div class='col-md-8'>
                        <h1 class='mb-0'>INVOICE</h1>
                        <p class='mb-0 opacity-75'>Invoice #INV-2024-0427</p>
                    </div>
                    <div class='col-md-4 text-md-end'>
                        <h3 class='mb-0'>$3,400.00</h3>
                        <small class='opacity-75'>Due: June 27, 2024</small>
                    </div>
                </div>
            </div>

            <div class='card-body p-4'>
                <div class='row mb-4'>
                    <div class='col-md-6'>
                        <h6 class='text-primary text-uppercase mb-2'>From</h6>
                        <strong>Tech Innovations Ltd</strong><br>
                        contact@techinnovations.com
                    </div>
                    <div class='col-md-6 text-md-end'>
                        <h6 class='text-primary text-uppercase mb-2'>Bill To</h6>
                        <strong>Future Solutions GmbH</strong><br>
                        1234 Innovation Drive<br>
                        Berlin, 10115
                    </div>
                </div>

                <table class='table invoice-table'>
                    <thead>
                        <tr>
                            <th>Description</th>
                            <th class='text-center'>Qty</th>
                            <th class='text-end'>Unit Price</th>
                            <th class='text-end'>Total</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>Cloud Hosting Services</td>
                            <td class='text-center'>12</td>
                            <td class='text-end'>€75.00</td>
                            <td class='text-end'>€900.00</td>
                        </tr>
                        <tr>
                            <td>Custom Web Application</td>
                            <td class='text-center'>3</td>
                            <td class='text-end'>€150.00</td>
                            <td class='text-end'>€450.00</td>
                        </tr>
                        <tr>
                            <td>Technical Support</td>
                            <td class='text-center'>15</td>
                            <td class='text-end'>€30.00</td>
                            <td class='text-end'>€450.00</td>
                        </tr>
                        <tr>
                            <td>Digital Marketing Campaign</td>
                            <td class='text-center'>2</td>
                            <td class='text-end'>€500.00</td>
                            <td class='text-end'>€1,000.00</td>
                        </tr>
                        <tr>
                            <td>SEO Optimization</td>
                            <td class='text-center'>5</td>
                            <td class='text-end'>€120.00</td>
                            <td class='text-end'>€600.00</td>
                        </tr>
                    </tbody>
                </table>

                <div class='row justify-content-end'>
                    <div class='col-md-4'>
                        <table class='table table-sm'>
                            <tr>
                                <td>Subtotal:</td>
                                <td class='text-end'><strong>€3,400.00</strong></td>
                            </tr>
                            <tr>
                                <td>Discount (10%):</td>
                                <td class='text-end text-success'>-€340.00</td>
                            </tr>
                            <tr>
                                <td>Tax (5%):</td>
                                <td class='text-end'>€153.00</td>
                            </tr>
                            <tr class='table-primary'>
                                <td><strong>Total Due:</strong></td>
                                <td class='text-end'><strong>€3,213.00</strong></td>
                            </tr>
                        </table>
                    </div>
                </div>

                <div class='alert alert-info mt-4'>
                    <strong>Payment Terms:</strong> Payment due within 30 days. Late payments may incur additional charges.
                </div>

                <div class='row mt-4 pt-3 border-top'>
                    <div class='col-md-6'>
                        <small class='text-muted'>Generated with IronPDF - No external APIs required</small>
                    </div>
                    <div class='col-md-6 text-md-end'>
                        <span class='badge bg-success'>PAID</span>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(professionalInvoice);
pdf.SaveAs("professional-invoice.pdf");
$vbLabelText   $csharpLabel

Ergebnis: Eine professionelle PDF-Rechnung mit Bootstrap 5-Farbverlaufskopfzeilen, responsiven Tabellen und Berechnungsübersichten. IronPDF rendert alle CSS-Verläufe, Tabellenstile und Dienstprogrammdatenklassen mit perfekter Genauigkeit – keine externen API-Aufrufe, keine Vorlagen, keine Internetverbindung erforderlich. Im Gegensatz zu CraftMyPDFs Cloud-basiertem Ansatz generiert IronPDF Rechnungen sofort auf Ihrem Server mit voller Kontrolle.

Was bewirkt der Code?

  1. RestClient einrichten: Client mit CraftMyPDF -API-Endpunkt initialisieren
  2. Header hinzufügen: API-Schlüssel und Inhaltstyp für die Authentifizierung angeben.
  3. Anfragetext vorbereiten: JSON-Objekt mit Vorlagendaten und Optionen erstellen.
  4. Anfrage senden: API-Aufruf zur PDF-Generierung ausführen.
  5. Antwort verarbeiten: Generiertes PDF herunterladen oder Fehlermeldung anzeigen

Was sind die wichtigsten Unterschiede für technische Gründer?

Wie unterscheiden sich templatebasierte und codebasierte Ansätze?

Vorlagenbasiert ( CraftMyPDF ):

  • Auch nicht-technische Teammitglieder können Vorlagen erstellen und bearbeiten.
  • Vorlagen werden zentral im Cloud-Dashboard verwaltet.
  • Änderungen an Vorlagen erfordern keine Codebereitstellung
  • Beschränkt durch die Vorgaben des Vorlagendesigns
  • Am besten geeignet für standardisierte Dokumente mit vorhersehbarem Layout

Code-First (IronPDF):

  • Volle Kontrolle über das Dokumentlayout mit HTML und CSS
  • JavaScript-Unterstützung ermöglicht dynamische Diagramme und Berechnungen
  • Vorlagen sind Teil der Codebasis und werden versioniert.
  • Unbegrenzte Designflexibilität mit jeder Webtechnologie
  • Ideal für komplexe, dynamische Dokumente, die programmatische Logik erfordern

Für Razor-Vorlagen bietet IronPDF native Unterstützung für MVC Core , MVC Framework und Razor Pages .

Welche Kostenfolgen ergeben sich bei unterschiedlichen Größenordnungen?

Kostenstruktur CraftMyPDF :

  • Kostenloses Kontingent: 50 API-Aufrufe/Monat mit einem Limit von 3 Vorlagen.
  • Bezahlte Tarife beginnen mit höheren monatlichen Gebühren.
  • Die Kosten pro PDF steigen linear mit dem Volumen
  • Laufende monatliche/jährliche Abonnementgebühren
  • Zusätzliche Kosten für Premium-Funktionen

IronPDF-Kostenstruktur:

Für Anwendungen, die monatlich mehr als 1.000 PDFs verarbeiten, bietet die Dauerlizenz von IronPDF planbare Kosten ohne laufende Gebühren. Der Lizenzrechner hilft bei der Schätzung der gesamten Besitzkosten. Für wachsende Teams sollten Sie Upgrades und Erweiterungen in Betracht ziehen.

Wie unterscheiden sich Entwicklungs-Workflows?

CraftMyPDF Workflow:

  1. Der Designer erstellt eine Vorlage in der Weboberfläche.
  2. Der Entwickler ordnet JSON-Felder der Vorlage zu.
  3. Für die API-Integration ist eine Authentifizierungskonfiguration erforderlich.
  4. Für Tests sind API-Aufrufe und Guthabennutzung erforderlich.
  5. Vorlagenaktualisierungen erfolgen außerhalb der Codebereitstellung.

IronPDF-Workflow:

  1. Der Entwickler schreibt eine HTML/CSS-Vorlage im Code.
  2. Lokales Testen ohne API-Beschränkungen
  3. Vorlagen werden zusammen mit dem Anwendungscode bereitgestellt.
  4. Die Versionskontrolle verfolgt alle Änderungen.
  5. CI/CD-Integration für automatisierte Tests

Der in sich geschlossene Ansatz von IronPDF ermöglicht schnellere Iterationszyklen und Offline-Entwicklung, was für eine schnelle Entwicklung entscheidend ist. Die Bibliothek unterstützt benutzerdefinierte Protokollierungs- und Rendering-Optionen für die Fehlersuche.

Wie steht es um Datenschutz und Compliance?

Datenverarbeitung CraftMyPDF :

  • Dokumente, die auf Cloud-Servern verarbeitet werden
  • Datenübertragung über das Internet erforderlich
  • Regionale Endpunkte für die Einhaltung der Vorschriften
  • Richtlinien für die Speicherung temporärer Dateien
  • Vereinbarungen zur Datenverarbeitung durch Dritte

IronPDF-Datenverarbeitung:

Bei Anwendungen, die sensible Kundendaten verarbeiten, beseitigt die lokale Verarbeitung von IronPDF Bedenken hinsichtlich des Datenschutzes durch Dritte. Digitale Signaturen und Passwortschutz bieten zusätzliche Sicherheitsebenen. Die Bibliothek unterstützt außerdem die Standards PDF/A und PDF/UA zur Gewährleistung der Konformität.

Wie schnell kann ich neue Dokumenttypen hinzufügen?

CraftMyPDF Zeitleiste:

  • Template-Design: 1-4 Stunden je nach Komplexität
  • Kartierung und Tests im Gelände: 1-2 Stunden
  • Abhängig von der Verfügbarkeit des Designers
  • Genehmigungsprozesse für Vorlagen können zu Verzögerungen führen.
  • Beschränkt durch die Möglichkeiten des Editors

IronPDF-Zeitleiste:

  • Erstellung der HTML-Vorlage: 30 Minuten bis 2 Stunden
  • Verwenden Sie bestehende Web-Frameworks wie Bootstrap
  • CSS-Stylesheets in mehreren Dokumenten wiederverwenden
  • Lokal testen mit sofortigem Feedback
  • Neue Dokumenttypen mit regelmäßigen Releases bereitstellen

Der Code-First-Ansatz von IronPDF verkürzt typischerweise die Markteinführungszeit für neue Dokumenttypen, insbesondere bei der Verwendung bestehender Web-Assets und Frameworks. Die Bibliothek unterstützt die Konvertierung von RTF zu PDF , DOCX zu PDF und Markdown zu PDF für zusätzliche Flexibilität.

Welche Lizenzoptionen gibt es?

Die IronPDF-Preisseite zeigt drei unbefristete Lizenzstufen: Lite (749 $), Plus (1.499 $) und Professional (2.999 $), mit Funktionsvergleichen und einem optionalen, lizenzgebührenfreien Weiterverbreitungs-Add-on für 1.499 $.

IronPDF bietet unbefristete Lizenzen gegen eine einmalige Gebühr an. Die Lite-Lizenz ( $799 ) unterstützt einzelne Entwickler bei einem Projekt. Die Professional-Lizenz ( $1,199 ) deckt mehrere Projekte und Entwickler ab. Die Enterprise-Lizenz ( $2,399 ) richtet sich an größere Teams mit umfangreichen Bereitstellungsanforderungen. Jede Lizenz beinhaltet ein Jahr Support und Updates. Eine OEM-Weitervertriebslizenz ermöglicht den kommerziellen Vertrieb. Eine kostenlose Testversion steht zur Verfügung. Alle Lizenzoptionen ansehen.

CraftMyPDF verwendet ein abonnementbasiertes Preismodell. Die kostenlose Version eignet sich für Entwicklung und Tests mit begrenzten API-Aufrufen. Bezahlte Tarife erhöhen die Nutzungslimits und bieten zusätzliche Funktionen, die sich an die Geschäftsanforderungen anpassen. Abonnements werden über das CraftMyPDF Dashboard verwaltet.

Welche Dokumentation und welcher Support stehen zur Verfügung?

Welche Dokumentation und welchen Support bietet IronPDF?

IronPDF bietet eine vollständige Dokumentation inklusive detaillierter Anleitungen, Beispielen und einem Schnellstartbereich . Die Ressourcen decken die grundlegende Nutzung bis hin zu fortgeschrittenen Konfigurationen ab. Zu den Supportkanälen gehören eine Wissensdatenbank , E-Mail-Support und die Möglichkeit, technische Supportanfragen zu stellen . Unser Support-Team steht Ihnen 24 Stunden an 5 Tagen in der Woche zur Verfügung, um Ihnen schnellstmöglich zu helfen. In den Leitfäden zur Fehlerbehebung werden häufig auftretende Probleme behandelt.

Die Dokumentation enthält API-Referenzen , Tutorials und Codebeispiele für alle Funktionen. Änderungsprotokolle dokumentieren Aktualisierungen und Meilensteine kennzeichnen wichtige Releases. Für Unterstützung bei der Migration siehe Leitfäden, die Aspose , iText , Syncfusion und andere Wettbewerber vergleichen.

Welche Dokumentation und welchen Support bietet CraftMyPdf ?

CraftMyPDF bietet eine API-Dokumentation mit detaillierten Informationen zu Endpunkten, Parametern und Beispielen. Die Leitfäden umfassen die Erstellung von Vorlagen, API-Anfragen und die Verarbeitung von Antworten. Unterstützung und Anregungen erhalten Sie per E-Mail und in Community-Foren.

Welche PDF-Lösung soll ich wählen?

Sowohl IronPDF als auch CraftMyPDF bieten leistungsfähige PDF-Generierungslösungen mit unterschiedlichen Ansätzen. CraftMyPDF zeichnet sich durch seinen visuellen Vorlagendesigner und die cloudbasierte Verarbeitung aus, während IronPDF durch HTML-Rendering eine vollständige programmatische Kontrolle ermöglicht.

IronPDF zeichnet sich durch seinen umfangreichen Funktionsumfang für komplexe Dokumentanforderungen aus. Es wandelt HTML , URLs und Dateien in PDFs um und unterstützt gleichzeitig erweiterte Funktionen wie digitale Signaturen , Formularverarbeitung und Dokumentbearbeitung . Die in sich geschlossene Bereitstellung ohne externe Abhängigkeiten gewährleistet einen zuverlässigen Betrieb auf verschiedenen Plattformen .

Die Lizenzmodelle unterscheiden sich erheblich. Die Dauerlizenzen von IronPDF beginnen bei $799 mit einer kostenlosen Testversion zur Evaluierung. Das Iron Suite-Paket bietet neun Produkte zum Preis von zwei und bietet damit ein hervorragendes Preis-Leistungs-Verhältnis für alle Anforderungen im Bereich Dokumentenmanagement.

Für Entwickler, die die volle Kontrolle über die PDF-Generierung mit umfassender HTML/CSS-Unterstützung , fortgeschrittener Dokumentenmanipulation und vorhersehbaren Kosten benötigen, bietet IronPDF eine zuverlässige Lösung. Die umfangreiche Dokumentation , der reaktionsschnelle Support und die flexiblen Bereitstellungsoptionen machen es für Anwendungen geeignet, die von der einfachen Dokumentenerstellung bis hin zu komplexen Unternehmens-Workflows reichen.

Hinweis: CraftMyPDF ist eine eingetragene Marke des jeweiligen Inhabers. Diese Website steht in keiner Verbindung zu CraftMyPDF, wird weder von CraftMyPDF unterstützt noch gesponsert. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Eigentümer. Die Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich verfügbare Informationen zum Zeitpunkt des Schreibens wider.

Häufig gestellte Fragen

Was sind die Vorteile der Verwendung einer C#-PDF-Bibliothek gegenüber einer auf API-basierten Lösung?

Eine umfassende PDF-Bibliothek wie IronPDF bietet umfangreiche Funktionen, nahtlose Integration mit .NET-Entwicklungsumgebungen, robuste Unterstützung und kosteneffiziente Lizenzierungsoptionen, und ist daher die überlegene Wahl für komplexe Dokumentenverarbeitung.

Wie kann ich HTML-Inhalte in ein PDF-Dokument mit C# konvertieren?

Sie können IronPDF verwenden, um HTML-Inhalte in PDF-Dokumente zu konvertieren. Es unterstützt HTML5 und CSS3 und stellt sicher, dass Webinhalte genau in den generierten PDFs gerendert werden.

Welche Funktionen werden in IronPDF für die PDF-Erzeugung hervorgehoben?

IronPDF bietet digitale Signaturen, Formularausfüllung, PDF-Bearbeitung, Anmerkungen und plattformübergreifende Kompatibilität. Es überzeugt in der Konvertierung von HTML, URLs und Bildern in PDFs mit robuster Leistung und Optimierung.

Wie handhabt CraftMyPDF das Design von PDF-Vorlagen?

CraftMyPDF bietet einen webbasierten Drag-and-Drop-Editor, der es Benutzern ermöglicht, PDF-Vorlagen ohne Programmierung zu entwerfen. Es unterstützt die Integration von JSON-Daten, um die Erstellung von maßgeschneiderten PDF-Dokumenten zu ermöglichen.

Welche Lizenzierungsoptionen sind für PDF-Tools wie IronPDF verfügbar?

IronPDF bietet flexible Lizenzierungsoptionen inklusive Lite-, Professional- und Enterprise-Lizenzen mit einer einmaligen Gebühr. Es bietet auch eine kostenlose Testversion für neue Benutzer, um seine Funktionen zu erkunden.

Wie kann ich eine PDF-Erzeugung-API in meine C#-Anwendung integrieren?

Um eine PDF-Erzeugung-API wie CraftMyPDF zu integrieren, müssen Sie ein Konto erstellen, einen geeigneten Plan auswählen, einen API-Schlüssel erhalten und Bibliotheken wie System.Net.Http und RestSharp verwenden, um API-Anfragen zu stellen.

Welche Unterstützungsressourcen stehen Entwicklern zur Verfügung, die IronPDF verwenden?

IronPDF bietet umfangreiche Dokumentation, Tutorials und 24/5 technischen Support. Diese Ressourcen helfen Entwicklern, die Bibliothek effektiv zu implementieren und Probleme in ihren Projekten zu beheben.

Wie installiere ich IronPDF in einer C#-Anwendung?

IronPDF kann über den NuGet-Paket-Manager in Visual Studio installiert werden, indem der NuGet-Paket-Manager-Konsolen verwendet wird oder indem das Paket direkt von der NuGet-Website heruntergeladen wird.

Wie verbessert IronPDF die Sicherheit und Interaktivität von PDF-Dokumenten?

IronPDF unterstützt Funktionen wie digitale Signaturen und Formularverarbeitung, die die Dokumentensicherheit und Interaktivität verbessern und es geeignet für umfassendes PDF-Management machen.

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