using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Im digitalen Zeitalter sind PDFs (Portable Document Formats) zu einer alltäglichen Notwendigkeit geworden, die für die Speicherung und den Austausch von Informationen in einem zuverlässigen und einheitlichen Format unerlässlich ist. Ob es um die Umwandlung von Dateneigenschaften in eine sauber formatierte PDF-Datei oder um die Erstellung einer professionellen Rechnung geht, Entwickler greifen häufig auf leistungsstarke C#-Client-Bibliotheken wie IronPDF und das lokale JSReport Studio zurück, anstatt Phantom PDF für die Serverentwicklung zu verwenden.
IronPDF bietet die beste Leistung bei der Konvertierung von HTML in PDFs im .NET-Framework, während JSReport SDK dynamische Berichtslösungen mit einem Fokus auf Flexibilität und Anpassung unter Nutzung des lokalen JSReport-Servers und der Konfigurationsdatei bietet. Beide Bibliotheken bieten einzigartige Lösungen, die den unterschiedlichen Bedürfnissen der Entwickler im Bereich der PDF-Erstellung und -Bearbeitung gerecht werden.
2. Verwendung von JSReport Server .NET
JSReport SDK .NET ist eine fortschrittliche Berichtslösung für .NET-Anwendungen, die besonders für ASP.NET Core-Umgebungen optimiert ist. Es zeichnet sich dadurch aus, dass es die Umwandlung von Ansichtsausgaben in verschiedene Formate wie PDF, Excel, DOCX und CSV direkt aus HTML und JavaScript ermöglicht. Diese Fähigkeit wird durch die Nutzung von ASP.NET MVC-Engines wie Razor für die Berichterstellung unter Verwendung eines Berichtsservers erleichtert.
JSReport .NET bietet einen umfassenden Satz von standardmäßigen lokalen Erweiterungen, einschließlich Zeitplanung, Versionierung von Vorlagen, Unterberichten, Benutzerverwaltung, Import-/Exportvorlagen und Datensicherung, wodurch seine Vielseitigkeit und Anwendbarkeit in verschiedenen Geschäftsszenarien verbessert wird. Darüber hinaus wird eine Vielzahl von APIs unterstützt, darunter REST API, CLI oder SDKs, die das Rendering von Berichten von praktisch überall aus ermöglichen.
2.1 Hauptmerkmale
2.1.1 ASP.NET Core Integration
JSReport SDK bietet ein jsreport.AspNetCore NuGet-Paket speziell für ASP.NET Core-Anwendungen. Dazu gehören Middleware-Filter, die MVC-Ansichtsausgaben in die gewünschten Formate umwandeln können, wobei die Ansichten als HTML-Generatoren und der JSReport-Server als Ausgabetransformator verwendet werden.
2.1.2 Flexibler Aufbau
Die Einrichtung erfordert die Verwendung von Paketen wie jsreport.AspNetCore, jsreport.Local und jsreport.Binary. Diese Hilfsklassen erleichtern die Verbindung zu entweder einer lokalen JSReport-Instanz oder einer entfernten Instanz über jsreport.Client.
2.1.3 Transformation der Ausgabe
Entwickler können JSReport-Rezepte für die Umwandlung der Ausgabe leicht festlegen. Zum Beispiel kann mit dem MiddlewareFilter und dem ChromePdf-Rezept ein ASP.NET-Filter das Rendering-Ergebnis einer Ansicht erfassen und in ein PDF-Format umwandeln. Diese Funktion ist besonders nützlich für ASP.NET-basierte Anwendungen.
2.1.4 Kompatibilität mit entfernten Instanzen
JSReport .NET lässt sich nahtlos in entfernte JSReport-Instanzen integrieren. Dies ist besonders vorteilhaft in orchestrierten Docker-Umgebungen, in denen JSReport in einem separaten Container und nicht in einem Container läuft. Eine solche Integration erleichtert die Orchestrierung von JSReport- und .NET Core-Anwendungen mit Tools wie Docker-Compose.
2.1.5 Erweiterte Antwortbearbeitung
Der OnAfterRender-Hook ermöglicht die Manipulation von Antwort-Headern und anderen Attributen. Dieser Hook kann auch verwendet werden, um die Ausgabe in einer Datei zu speichern, was Flexibilität bei der Handhabung der Antwort aus dem Berichtserstellungsprozess bietet.
2.1.6 Benutzerdefinierte Kopfzeilen
JSReport .NET ermöglicht die Angabe von benutzerdefinierten PDF-Kopfzeilen durch partielle Ansichten. Diese Kopfzeilen können zur Laufzeit zusammen mit dem Hauptinhalt der PDF-Datei gerendert werden, was zusätzliche Anpassungsmöglichkeiten für die Berichterstellung bietet.
2.1.7 Rendering ohne MVC-Ansichten
Das Framework unterstützt das Rendern von Berichten aus Roh-HTML, nicht nur aus MVC-Ansichten. Diese Funktion ermöglicht eine größere Flexibilität bei der Berichterstellung, da Entwickler HTML-Inhalte direkt rendern können.
3. IronPDF
IronPDF ist eine nützliche Bibliothek für .NET-Anwendungen, die die Arbeit mit PDFs erleichtern soll. Eine der Hauptaufgaben besteht darin, HTML in PDFs zu konvertieren, was ideal ist, wenn Sie Berichte oder Rechnungen aus Webseiten erstellen müssen. Außerdem ist es ziemlich schnell, egal ob man an serverseitigen oder clientseitigen Dingen arbeitet, was es zu einer großartigen Bibliothek sowohl für geschäftliche Projekte als auch für den privaten Gebrauch macht.
IronPDF passt in viele verschiedene .NET-Umgebungen wie ASP.NET, MVC, Windows Forms und WPF. Es lässt sich problemlos in .NET Core und .NET-Framework integrieren. Es funktioniert auch mit Azure und anderen Cloud-Diensten, was ein großes Plus für die cloudbasierte Anwendungsentwicklung ist.
3.1 Hauptmerkmale von IronPDF
3.1.1 Konvertierung von HTML in PDF
IronPDF ist perfekt für die Konvertierung von HTML in PDF-Dokumente geeignet. Es verarbeitet HTML, CSS, JavaScript und Bilder perfekt und sorgt dafür, dass Ihre Webinhalte in der endgültigen PDF-Datei genau richtig aussehen. Bei der Konvertierung werden das Layout und der Stil des ursprünglichen HTML-Formats beibehalten.
3.1.2 ASP.NET-Integration
Die Integration in ASP.NET ist nahtlos und ermöglicht die Konvertierung von ASPX-Seiten in PDFs ohne großen Programmieraufwand. Dies ist sehr praktisch, um aus bestehenden Webanwendungen PDFs zu erstellen.
3.1.3 Bearbeitung und Manipulation
IronPDF ermöglicht Ihnen, bestehende PDF-Dateien zu bearbeiten, wie das Hinzufügen von Text, Bildern und Seiten oder das Zusammenführen mehrerer PDFs. Die Bearbeitungsfunktionen sind benutzerfreundlich, so dass Sie kein PDF-Experte sein müssen, um sie zu nutzen. Sie können auch Anmerkungen, Anhänge, Gliederungen und Lesezeichen zu Ihrem PDF hinzufügen.
3.1.4 Befüllung und Extraktion von Formularen
IronPDF unterstützt das Ausfüllen und Extrahieren von Daten aus PDF-Formularen, was entscheidend für Apps ist, die mit Formularen arbeiten. IronPDF macht den gesamten Prozess der Verwaltung von Formulardaten sehr viel reibungsloser. Das Programm kann auch verschiedene Arten von PDF-Formularen verarbeiten, was seine Flexibilität noch erhöht.
3.1.5 Sicherheitsmerkmale
IronPDF verfügt über Sicherheitsfunktionen wie den Passwortschutz und die Festlegung von Berechtigungen für PDF-Dokumente, die für die Sicherheit sensibler Informationen von entscheidender Bedeutung sind. Es verfügt auch über Verschlüsselungs- und Entschlüsselungsfunktionen, die eine weitere Sicherheitsebene für Ihre PDFs hinzufügen.
3.1.6 Anpassbares Rendering
Sie erhalten viel Kontrolle darüber, wie Ihre PDFs gerendert werden, wie das Einrichten von benutzerdefinierten Kopf- und Fußzeilen, das Anpassen von Seitenrändern und das Auswählen spezifischer HTML-Teile für die Konvertierung. Diese Anpassungsmöglichkeiten sorgen dafür, dass Ihre PDFs genau so werden, wie Sie es wünschen.
3.1.7 Erweiterte PDF-Funktionen
IronPDF unterstützt PDF/A-Konformität und digitale Signaturen. Außerdem verfügt es über OCR-Funktionen, d. h. es kann gescannte Dokumente und Bilder in PDF-Dateien umwandeln, die Sie durchsuchen und bearbeiten können. Diese Funktionen sind ideal für komplexere Projekte.
3.1.8 Einfache Bereitstellung
Die Einrichtung von IronPDF ist unkompliziert - zusätzliche Installationen oder Abhängigkeiten sind nicht erforderlich. Es ist leichtgewichtig, so dass es die Leistung der Anwendung nicht beeinträchtigt. Außerdem wird sie ständig aktualisiert, um mit der neuesten .NET-Technologie Schritt zu halten, sodass Sie eine PDF-Lösung erhalten, die nicht veraltet.
4. Erstellen des .NET-Projekts
4.1 Ein neues Projekt starten
Öffnen Sie Visual Studio und starten Sie ein neues Projekt, indem Sie auf die Schaltfläche "Create a New Project" klicken.
Wählen Sie dann die "Console App", ".NET Core App" oder eine andere Option.
4.2 Einrichten des Projekts
Sie müssen Ihrem Projekt einen Namen geben. Suchen Sie das Textfeld für den Projektnamen und geben Sie den gewünschten Namen ein. Wählen Sie außerdem einen Speicherort für Ihr Projekt, indem Sie den Pfad auswählen, in dem Sie Ihr Projekt speichern möchten. Sobald Sie diese Angaben eingegeben haben, klicken Sie auf die Schaltfläche "Erstellen", um fortzufahren.
4.3 Auswahl des .NET-Frameworks
Der nächste Schritt besteht darin, das erforderliche .NET-Framework für Ihr Projekt auszuwählen. Diese Entscheidung hängt von den Anforderungen und der Kompatibilität Ihres Projekts ab. Klicken Sie anschließend auf die Schaltfläche Erstellen.
5. IronPDF-Bibliothek installieren
5.1 Verwendung des NuGet-Paketmanagers
Gehen Sie folgendermaßen vor, um IronPDF mit dem Visual Studio NuGet Package Manager zu installieren:
Öffnen Sie Ihr Projekt in Visual Studio.
Klicken Sie auf das Menü "Tools", wählen Sie "NuGet Package Manager" und dann "Manage NuGet Packages for Solution"
Klicken Sie im NuGet-Paketmanager auf die Registerkarte "Durchsuchen".
Suchen Sie nach "IronPDF"
Sobald Sie das IronPDF-Paket gefunden haben, wählen Sie es aus und klicken Sie auf "Installieren"
Folgen Sie den Aufforderungen, um die Installation abzuschließen.
5.2 Verwenden der Visual Studio-Befehlszeile
Wenn Sie die Kommandozeile bevorzugen, können Sie IronPDF wie folgt in Visual Studio installieren:
Öffnen Sie Visual Studio.
Gehen Sie zum Menü "Werkzeuge", klicken Sie auf "NuGet Package Manager" und wählen Sie dann "Package Manager Console" aus dem Seitenmenü.
Geben Sie in der Konsole den folgenden Befehl ein:
Install-Package IronPdf
Drücken Sie die Eingabetaste, um den Befehl auszuführen, und warten Sie, bis die Installation abgeschlossen ist.
5.3 Direkter Download von der NuGet-Webseite
IronPDF kann auch direkt von der NuGet-Website heruntergeladen werden:
Besuchen Sie die offizielle NuGet-Website.
Verwenden Sie die Suchleiste, um das IronPDF-Paket zu finden.
Auf der IronPDF-Paketseite finden Sie Optionen, um das Paket direkt herunterzuladen.
Laden Sie die .nupkg-Datei herunter und fügen Sie sie manuell zu Ihrem Projekt hinzu.
6. JSReport installieren
6.1 Verwendung des NuGet-Paketmanagers in Visual Studio
Um JSReport mit dem NuGet-Paketmanager von Visual Studio auszuführen, gehen Sie zum Menü "Tools" und wählen Sie "Manage NuGet Packages". Dadurch wird die Oberfläche des NuGet-Paketmanagers geöffnet. Im NuGet-Paket-Manager können Sie je nach Projektanforderungen nach jsreport.Local oder jsreport.Binary suchen.
Dies sind die wichtigsten Pakete für die Integration von JSReport in eine .NET-Anwendung. Nachdem Sie das entsprechende Paket gefunden haben, klicken Sie auf "Installieren", um es zu Ihrem Projekt hinzuzufügen. Bei diesem Vorgang wird das Paket automatisch heruntergeladen und in Ihrem Projekt referenziert, so dass es einsatzbereit ist.
6.2 Verwendung der NuGet-Paketmanager-Konsole
Alternativ können Sie JSReport auch über die NuGet Package Manager Console in Visual Studio installieren. Öffnen Sie dazu die NuGet Package Manager Console aus dem Menü "Tools", indem Sie "NuGet Package Manager" und dann "Package Manager Console" auswählen.
In der Konsole müssen Sie einen bestimmten Befehl ausführen, um das JSReport-Paket zu installieren. Wenn Sie das jsreport.Local-Paket installieren möchten, würden Sie den Befehl Install-Package jsreport.Local verwenden. Für die jsreport.Binary-Pakete wäre der Befehl Install-Package jsreport.Binary. Wenn Sie diese Befehle in der Paketmanager-Konsole ausführen, wird das entsprechende JSReport-Paket heruntergeladen und zu Ihrem Projekt hinzugefügt.
7. Vergleich der HTML-zu-PDF-Funktion in IronPDF und JSReport
7.1 IronPDFs HTML-zu-PDF-Konvertierung
IronPDF ist die beste Bibliothek für die Konvertierung von HTML in PDF. Es zeichnet sich durch seine Benutzerfreundlichkeit und hohe Leistung aus, was es zur ersten Wahl unter Entwicklern macht. Es unterstützt fortschrittliche Funktionen wie CSS-Rendering, JavaScript-Ausführung und benutzerdefinierte Kopf- und Fußzeilen, was seine Fähigkeit zur Erstellung hochwertiger PDFs aus HTML-Quellen weiter verbessert. IronPDF bietet 3 Möglichkeiten, HTML in PDF zu konvertieren:
HTML-String in PDF
HTML-Datei in PDF
URL zu PDF
Lassen Sie uns diese Funktionen nacheinander besprechen.
7.1.1 HTML-String zu PDF
Mit dieser Funktion können Sie HTML-Inhalte direkt aus einer Zeichenkette konvertieren. Dies ist besonders nützlich, wenn der HTML-Inhalt innerhalb Ihrer Anwendung dynamisch erzeugt oder geändert wird. Sie können die HTML-Zeichenfolge an IronPDF übergeben, das sie dann als PDF-Datei darstellt.
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
string htmlString = @"
<html>
<head>
<title>Example HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is an HTML string converted to PDF using IronPDF.</p>
</body>
</html>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
string htmlString = @"
<html>
<head>
<title>Example HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is an HTML string converted to PDF using IronPDF.</p>
</body>
</html>";
// Convert HTML string to PDF
var pdfDocument = renderer.RenderHtmlAsPdf(htmlString);
pdfDocument.SaveAs("HtmlStringToPdf.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
Dim htmlString As String = "
<html>
<head>
<title>Example HTML</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is an HTML string converted to PDF using IronPDF.</p>
</body>
</html>"
' Convert HTML string to PDF
Dim pdfDocument = renderer.RenderHtmlAsPdf(htmlString)
pdfDocument.SaveAs("HtmlStringToPdf.pdf")
Hier ist die ausgegebene PDF-Datei:
7.1.2 HTML-Datei in PDF
Mit dieser Methode können Sie eine bestehende HTML-Datei in eine PDF-Datei umwandeln. Dies ist nützlich, wenn Sie statische HTML-Dateien haben, die als PDF-Dateien präsentiert oder verteilt werden sollen. Sie müssen nur den Pfad zur HTML-Datei angeben, und IronPDF übernimmt die Konvertierung.
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
pdfDocument.SaveAs("Invoice.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
var pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html");
pdfDocument.SaveAs("Invoice.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
Dim pdfDocument = renderer.RenderHtmlFileAsPdf("invoice.html")
pdfDocument.SaveAs("Invoice.pdf")
Hier ist die PDF-Ausgabedatei einer HTML-Rechnung:
1
7.1.2 URL zu PDF
Diese Funktion ermöglicht die Umwandlung einer gesamten Webseite in ein PDF-Dokument unter Verwendung ihrer URL. Es ist sehr praktisch, um den aktuellen Zustand einer Webseite zu erfassen, einschließlich Styling, Bilder und andere Ressourcen. IronPDF lädt die Webseite von der angegebenen URL und konvertiert sie in ein PDF-Dokument, wobei das Layout und der Inhalt so genau wie möglich nachgebildet werden.
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
//https url
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
pdfDocument.SaveAs("UrlToPdf.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
IronPdf.License.LicenseKey = "Your-License-Key";
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
//https url
var pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/");
pdfDocument.SaveAs("UrlToPdf.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
IronPdf.License.LicenseKey = "Your-License-Key"
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2
'https url
Dim pdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/")
pdfDocument.SaveAs("UrlToPdf.pdf")
Hier sehen Sie die PDF-Datei der Microsoft .NET-Website, die mit der oben beschriebenen Logik erstellt wurde.
7.2 JSReport C# HTML zu PDF Konvertierung
Der Prozess der Konvertierung von HTML in PDF in JSReport umfasst mehrere Schritte, oft auch die Einrichtung eines JSReport-Servers oder die Verwendung seiner Online-API. Eine typische Implementierung in C# könnte wie folgt aussehen
using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task<IActionResult> GeneratePdf()
{
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
Engine = Engine.None,
Recipe = Recipe.ChromePdf
},
Options = new RenderOptions()
{
Debug = new DebugOptions() { Preview = true }
}
});
var stream = new MemoryStream();
reportResult.Content.CopyTo(stream);
stream.Position = 0;
return File(stream, "application/pdf", "Report.pdf");
}
using JsReport.AspNetCore;
using JsReport.Types;
using System.Threading.Tasks;
public async Task<IActionResult> GeneratePdf()
{
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
Engine = Engine.None,
Recipe = Recipe.ChromePdf
},
Options = new RenderOptions()
{
Debug = new DebugOptions() { Preview = true }
}
});
var stream = new MemoryStream();
reportResult.Content.CopyTo(stream);
stream.Position = 0;
return File(stream, "application/pdf", "Report.pdf");
}
Imports JsReport.AspNetCore
Imports JsReport.Types
Imports System.Threading.Tasks
Public Async Function GeneratePdf() As Task(Of IActionResult)
Dim report = (New LocalReporting()).UseBinary(JsReportBinary.GetBinary()).AsUtility().Create()
Dim reportResult = Await report.RenderAsync(New RenderRequest() With {
.Template = New Template() With {
.Content = "<html><body><h1>Example HTML</h1><p>This is converted to PDF using JSReport.</p></body></html>",
.Engine = Engine.None,
.Recipe = Recipe.ChromePdf
},
.Options = New RenderOptions() With {
.Debug = New DebugOptions() With {.Preview = True}
}
})
Dim stream = New MemoryStream()
reportResult.Content.CopyTo(stream)
stream.Position = 0
Return File(stream, "application/pdf", "Report.pdf")
End Function
Sie können auch Beispiele für JSReport .NET unter folgendem Link finden. Hier ist ein Beispiel für die Ausgabe des PDF-Rechnungsberichts.
8. Flexibilität und erweiterte Funktionen
8.1 IronPDFs erweiterte Funktionen und Anpassungen
IronPDF zeichnet sich durch seine fortschrittlichen Funktionen und ein hohes Maß an Anpassungsmöglichkeiten aus, die den unterschiedlichsten Anforderungen an die PDF-Bearbeitung gerecht werden. Zu den wichtigsten erweiterten Funktionen gehören:
PDF/A-Konformität: Es unterstützt das PDF/A-Format, das für die Langzeitarchivierung und die Einhaltung von Industriestandards unerlässlich ist. Diese Konformität ist besonders wichtig für den Rechts-, Finanz- und Regierungssektor, wo die Integrität der Dokumente im Laufe der Zeit von größter Bedeutung ist.
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
using IronPdf;
// Create a PdfDocument object or open any PDF File
PdfDocument pdf = PdfDocument.FromFile("wikipedia.pdf");
// Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3);
Imports IronPdf
' Create a PdfDocument object or open any PDF File
Private pdf As PdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Use the SaveAsPdfA method to save to file
pdf.SaveAsPdfA("pdf-a3-wikipedia.pdf", PdfAVersions.PdfA3)
Bearbeiten, Zusammenführen und Aufteilen von PDFs: IronPDF ermöglicht das Bearbeiten bestehender PDFs, das Zusammenführen mehrerer PDFs zu einem sowie das Aufteilen von PDFs in separate Dokumente. Diese Funktion ist besonders nützlich, wenn große Dokumente zur leichteren Verteilung aufgeteilt werden müssen oder wenn verschiedene Abschnitte verschiedener Dokumente kombiniert werden sollen.
Sicherheitsfunktionen: Es umfasst robuste Sicherheitsfunktionen wie Passwortschutz, Verschlüsselung und die Möglichkeit, Benutzerberechtigungen festzulegen. IronPDF unterstützt die Verschlüsselung von PDF-Dateien, wodurch eine zusätzliche Sicherheitsebene hinzugefügt wird und der Inhalt vor Änderungen oder Kopien geschützt wird.
using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf");
using IronPdf;
// Open a PDF File
var pdfDoc = PdfDocument.FromFile("invoice.pdf");
// The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption();
pdfDoc.SecuritySettings.AllowUserAnnotations = false;
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = false;
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdfDoc.SecuritySettings.AllowUserFormData = false;
// Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen"; // password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare"; // password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf");
Imports IronPdf
' Open a PDF File
Private pdfDoc = PdfDocument.FromFile("invoice.pdf")
' The following code makes a PDF read only and will disallow copy & paste and printing
pdfDoc.SecuritySettings.RemovePasswordsAndEncryption()
pdfDoc.SecuritySettings.AllowUserAnnotations = False
pdfDoc.SecuritySettings.AllowUserCopyPasteContent = False
pdfDoc.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
pdfDoc.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdfDoc.SecuritySettings.AllowUserFormData = False
' Change or set the document encryption password
pdfDoc.SecuritySettings.OwnerPassword = "passForOpen" ' password to edit the pdf
pdfDoc.SecuritySettings.UserPassword = "onlyForShare" ' password to open the pdf
pdfDoc.SaveAs("InvoiceProtected.pdf")
Kopf- und Fußzeilensteuerung: Entwickler können problemlos benutzerdefinierte Kopf- und Fußzeilen zu ihren PDF-Dokumenten hinzufügen, eine Funktion, die für professionell aussehende Berichte, Rechnungen und andere Geschäftsdokumente unerlässlich ist. Dazu gehört auch die Möglichkeit, Seitenzahlen, Datumsangaben und benutzerdefinierten Text hinzuzufügen.
PDF-zu-Bild-Konvertierung: IronPDF ermöglicht die Umwandlung von PDF-Seiten in Bilder. Diese Funktion ist besonders nützlich für Szenarien, in denen Sie PDF-Inhalte als Bilder in Webanwendungen oder zur Erstellung von Miniaturansichten anzeigen müssen.
using IronPdf;
using IronSoftware.Drawing;
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
using IronPdf;
using IronSoftware.Drawing;
var pdf = PdfDocument.FromFile("Example.pdf");
// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);
// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
Imports IronPdf
Imports IronSoftware.Drawing
Private pdf = PdfDocument.FromFile("Example.pdf")
' Extract all pages to a folder as image files
pdf.RasterizeToImageFiles("C:\image\folder\*.png")
' Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles("C:\image\folder\example_pdf_image_*.jpg", 100, 80)
' Extract all pages as AnyBitmap objects
Dim pdfBitmaps() As AnyBitmap = pdf.ToBitmap()
8.2 JSReport .NET Erweiterte Funktionen und Erweiterbarkeit
JSReport .NET ist bekannt für seine fortschrittlichen Funktionen und seine Erweiterbarkeit, was es zu einem vielseitigen Werkzeug für die Berichterstellung macht. Seine wichtigsten Merkmale sind:
Dynamische Berichtserstellung: Es unterstützt verschiedene Template-Engines, einschließlich Handlebars und EJS, und ermöglicht komplexe und flexible Berichtsentwürfe. Diese Multi-Engine-Kompatibilität ermöglicht eine breite Palette von Gestaltungsmöglichkeiten, die unterschiedlichen Anforderungen und Komplexitäten bei der Berichtserstellung gerecht werden.
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
.KillRunningJsReportProcesses()
.Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "{{{message}}}",
Engine = Engine.Handlebars,
Recipe = Recipe.ChromePdf
},
Data = new
{
message = "PDF Generation with JSReport .NET"
}
});
var report = new LocalReporting()
.UseBinary(JsReportBinary.GetBinary())
.RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport"))
.KillRunningJsReportProcesses()
.Configure(cfg => cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory())
.AsUtility()
.Create();
var reportResult = await report.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Content = "{{{message}}}",
Engine = Engine.Handlebars,
Recipe = Recipe.ChromePdf
},
Data = new
{
message = "PDF Generation with JSReport .NET"
}
});
Dim report = (New LocalReporting()).UseBinary(JsReportBinary.GetBinary()).RunInDirectory(Path.Combine(Directory.GetCurrentDirectory(), "jsreport")).KillRunningJsReportProcesses().Configure(Function(cfg) cfg.AllowLocalFilesAccess().FileSystemStore().BaseUrlAsWorkingDirectory()).AsUtility().Create()
Dim reportResult = Await report.RenderAsync(New RenderRequest() With {
.Template = New Template() With {
.Content = "{{{message}}}",
.Engine = Engine.Handlebars,
.Recipe = Recipe.ChromePdf
},
.Data = New With {Key .message = "PDF Generation with JSReport .NET"}
})
Template Engines: JSReport .NET bietet Funktionen zur Planung und Automatisierung für die Berichterstellung, ideal für regelmäßige Berichtsanforderungen wie tägliche oder monatliche Zusammenfassungen. Diese Funktionalität gewährleistet die rechtzeitige Bereitstellung von Berichten und kann für ereignisgesteuerte Berichte in Geschäftsabläufe integriert werden.
Erweiterbarkeit mit benutzerdefinierten Skripten: JSReport C# ermöglicht die Erweiterung seiner Fähigkeiten durch benutzerdefinierte Skripte, wodurch Funktionen wie die benutzerdefinierte Datenverarbeitung oder spezielle Formatierungen verbessert werden können. Diese Erweiterbarkeit ist von entscheidender Bedeutung für die Erstellung von Berichten, die spezifischen Anforderungen an Geschäftslogik und Datenmanipulation entsprechen.
9. Unterstützung
9.1 Qualität und Verfügbarkeit der IronPDF-Dokumentation
Die Dokumentation von IronPDF ist umfassend und benutzerfreundlich und richtet sich sowohl an Anfänger als auch an erfahrene Entwickler. Es enthält detaillierte Anleitungen, API-Referenzen und eine Fülle von Codebeispielen, die es Entwicklern erleichtern, die Funktionen der Bibliothek in verschiedenen Sprachen wie C# und Node zu verstehen und zu implementieren.
Die Dokumentation ist gut strukturiert, wird regelmäßig aktualisiert und spiegelt die neuesten Funktionen und bewährten Verfahren wider. Darüber hinaus bietet die IronPDF-Website Schnellstartanleitungen und häufig gestellte Fragen (FAQs), die besonders für diejenigen hilfreich sind, die neu in der PDF-Bearbeitung in einer .NET-Umgebung sind.
IronPDF bietet auch eine Online-Spielwiese, auf der Sie die IronPDF-Funktionen online ausprobieren können, ohne den Code herunterladen zu müssen. Entdecken Sie es über den folgenden Link.
9.1.1 Unterstützungsoptionen
IronPDF bietet mehrere Support-Optionen, darunter ein eigenes Support-Team für die Bearbeitung von Fragen und technischen Problemen. Sie bieten E-Mail-Support und sind aktiv in Entwicklerforen vertreten, wo sie Lösungen und Ratschläge anbieten. Sie können den Live-Support auch über die Live-Support-Option auf der Website kontaktieren.
9.2 Qualität und Verfügbarkeit der JSReport .NET-Dokumentation
JSReport .NET ist stolz auf seine umfangreiche und gut gepflegte Dokumentation. Die Dokumentation deckt ein breites Spektrum an Themen ab, von der grundlegenden Einrichtung bis hin zu fortgeschrittenen Nutzungsszenarien, komplett mit Code-Schnipseln und Implementierungsbeispielen. Sie ist logisch aufgebaut, so dass man sich leicht zurechtfindet und relevante Informationen findet. Zu den Online-Ressourcen gehört auch eine umfassende API-Referenz, so dass Entwickler Zugang zu detaillierten Informationen über die Funktionen des Tools haben.
9.2.1 Unterstützungsoptionen
Was die Unterstützung angeht, so bietet JSReport .NET eine Vielzahl von Optionen. Das Unternehmen verfügt über ein engagiertes Support-Team, das per E-Mail erreichbar ist, und unterhält eine aktive Präsenz auf GitHub, die eine Plattform für die Meldung von Problemen und Funktionsanforderungen bietet.
10. Modelle zur Lizenzierung
10.1 IronPDFs Lizenz
IronPDF bietet drei unterschiedliche Preisoptionen an, die auf verschiedene Nutzungsgrade und Budgetanforderungen zugeschnitten sind:
Lite Edition: Zum Preis von $749, ist dies eine einmalige Gebühr für die Cloud-Bereitstellung. Es ist für kleinere Projekte oder Teams gedacht, die gerade erst mit der PDF-Verarbeitung beginnen.
Professional Edition: Für 1.499 $, ebenfalls eine einmalige Gebühr für die Nutzung in der Cloud, ist diese Edition geeignet für professionelle Entwickler, die fortgeschrittenere Funktionen und Möglichkeiten benötigen.
Unlimited Edition: Das umfassendste Paket, zum Preis von 2.999 USD, ist eine einmalige Gebühr für die Cloud-Bereitstellung. Es ist ideal für den Einsatz in großen Unternehmen, da es umfangreiche Funktionen und keine Nutzungsbeschränkungen bietet.
10.2 JSReport .NET Lizenz
JSReport .NET bietet flexible Lizenzierungsoptionen an, darunter sowohl abonnementbasierte als auch unbefristete Lizenzen:
Free License: Dies bietet eine voll funktionsfähige Instanz, die auf bis zu 5 Berichtsvorlagen begrenzt ist. Sie erfordert keinen Lizenzschlüssel und eignet sich für kleine Projekte oder Evaluierungszwecke.
Enterprise-Abonnement: Zum Preis von 395 $ pro Jahr bietet dieser Plan eine voll funktionsfähige einzelne JSReport-Instanz ohne Einschränkungen und umfasst Updates. Es ist ideal für einzelne Unternehmen, die eine robuste Berichtslösung benötigen.
Enterprise Scale Subscription: Für 1.295 $ pro Jahr ist dieser Plan ideal für groß angelegte Bereitstellungen und bietet einen einzigen Lizenzschlüssel, der für eine unendliche Anzahl von Instanzen gültig ist. Dieser Plan beinhaltet Updates und ist lizenzgebührenfrei, so dass er sich für Unternehmen eignet, die mehrere Instanzen betreiben oder als Teil eines anderen Produkts für mehrere Kunden bereitstellen.
11. Schlussfolgerung
Zusammenfassend lässt sich sagen, dass sowohl IronPDF als auch JSReport .NET in ihren jeweiligen Bereichen wertvoll sind, IronPDF jedoch aufgrund seiner umfassenden PDF-Bearbeitungsfunktionen einen leichten Vorteil hat. Es zeichnet sich in Bereichen wie der PDF/A-Konformität, der erweiterten Bearbeitung und den Sicherheitsfunktionen aus, was es zu einem vielseitigen Werkzeug für die detaillierte PDF-Verarbeitung in .NET-Umgebungen macht. JSReport .NET mit seinen Stärken in der dynamischen Berichtserstellung und Vorlagenerstellung ist äußerst effektiv für berichtszentrierte Aufgaben. Für die meisten Szenarien, die eine detaillierte und vielfältige PDF-Verarbeitung und -Manipulation erfordern, erweist sich IronPDF jedoch als die vorteilhaftere Wahl.
IronPDF bietet eine kostenlose Entwicklerlizenz und eine kostenlose Testversion. Iron Software bietet ein umfassendes Paket namens Iron Suite an. Diese Suite, die IronBarcode, IronXL, IronQR, IronOCR, IronPDF und IronWebScraper umfasst, wird zum Preis von 2 Software angeboten und bietet Entwicklern, die eine breite Palette an Funktionen suchen, einen erheblichen Mehrwert.
Letztendlich hängt die Wahl zwischen beiden von den spezifischen Bedürfnissen und dem Umfeld des Projekts oder des Entwicklers ab.
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.
< PREVIOUS Ein Vergleich zwischen IronPDF und DinktoPdf
NÄCHSTES > Ein Vergleich der PDF-Erstellung in C# zwischen ITextSharp und IronPDF