IRONPDF VERWENDEN

Eine PDF-Datei mit Blazor erstellen Tutorial

Aktualisiert 11. Februar 2024
Teilen Sie:

IronPDF, eine bekannte C#-Bibliothek, arbeitet mit Blazor-Anwendungen zusammen. Dieser Beitrag führt Sie durch die Verwendung von IronPDF, um einen PDF-Bericht in eine Blazor-Anwendung einzubetten, und zeigt die nahtlose Integration und Effektivität des Programms.

1. IronPDF-Funktionen

Entwickler können mit Hilfe der robusten IronPDF for .NET PDF-Bibliothek schnell PDF-Dokumente erstellen, lesen und verarbeiten. IronPDF hat eine eingebaute Chrome-Engine und bietet eine Fülle von praktischen und leistungsfähigen Funktionen. Dazu gehört die Möglichkeit, HTML5, JavaScript, CSS und Bilder in PDF zu konvertieren, PDF-Dokumente mit eindeutigen Kopf- und Fußzeilen zu versehen und PDFs genau so zu erstellen, wie sie in einem Webbrowser erscheinen. IronPDF unterstützt verschiedene Webtechnologien, darunter HTML, ASPX, Razor Pages und MVC-Frameworks.

Die wichtigsten Eigenschaften von IronPDF sind folgende:

  • IronPDF bietet volle Kontrolle über die Erstellung und Änderung von PDF-Dateien innerhalb von .NET C#-Anwendungen
  • IronPDF kann pDF-Dateien von Webseiten aus deren URLs generieren mit spezifischen User-Agent-, Proxy-, Header- und Cookie-Konfigurationen.
  • IronPDF kann PDF-Dateien für Webseiten erzeugen, die sich hinter anmeldeformulare mit Formularvariablen
  • IronPDF kann fotos extrahieren und/oder entfernen aus bereits vorhandenen PDF-Dateien
  • IronPDF kann Text, Fotos und Lesezeichen hinzufügen, wasserzeichenund andere Elemente in PDF-Dokumenten
  • IronPDF macht es einfach seiten zusammenführen und trennen von einem oder mehreren PDF-Dokumenten.
  • IronPDF kann Webseiten-Assets wie JavaScript, CSS und Mediendateien verarbeiten und sie in PDF-Dokumente umwandeln, so wie sie in einem Browser erscheinen würden.
  • IronPDF unterstützt alle .NET-Frameworks, einschließlich .NET Core, .NET-Standard, etc.

2. Was ist Blazor?

Blazor ist ein Web Application Framework, das es ermöglicht, clientseitige Webanwendungen in C# und HTML mit Web Assembly zu erstellen.

Web Assembly-Anwendungen werden in einem binären Befehlsformat an den Browser gesendet, das mit nahezu natürlicher Geschwindigkeit arbeitet. Dies hat neue Möglichkeiten für Sprachen wie C# geschaffen, die innerhalb des Browsers ausgeführt werden können.

Erstellen eines neuen Projekts in Visual Studio

Öffnen Sie zunächst die Anwendung Microsoft Visual Studio und wählen Sie im Menü "Datei" den Befehl "Neues Projekt". Wählen Sie dann "Blazor Server App".

Erstellen einer PDF-Datei mit Blazor Tutorial, Abbildung 1: Erstellen eines neuen Projekts in Visual Studio

Erstellen eines neuen Projekts in Visual Studio

Geben Sie einen Projektnamen ein und wählen Sie einen Dateipfad. Klicken Sie dann auf die Schaltfläche Erstellen.

Create a PDF File with Blazor Tutorial, Abbildung 2: Auswahl des Namens und des Speicherortes für die neue Blazor Anwendung

Wählen des Namens und des Speicherorts der neuen Blazor-Anwendung

Wählen Sie das gewünschte .NET-Framework (in diesem Lernprogramm wird .NET 6.0 verwendet)wie in der nachstehenden Abbildung gezeigt:

Erstellen einer PDF-Datei mit Blazor Tutorial, Abbildung 3: Erstellen eines neuen Projekts in Visual Studio mit dem .NET 6.0 Framework

Erstellen eines neuen Projekts in Visual Studio mit dem .NET 6.0-Framework

Microsoft Visual Studio wird nun die Struktur für diese Blazor-Anwendung generieren.

Als nächstes fügen Sie die IronPDF-Bibliothek zu diesem neuen Projekt hinzu.

3. Installieren Sie die IronPDF-Bibliothek

Die IronPDF Library kann auf vier Arten heruntergeladen und installiert werden:

  • Verwendung des NuGet-Paketmanagers von Visual Studio
  • Verwendung der Befehlszeile von Visual Studio
  • Direktes Herunterladen von der NuGet-Website
  • Direktes Herunterladen von der IronPDF-Website

3.1 Verwendung des NuGet-Paketmanagers von Visual Studio

Visual Studio bietet den NuGet Package Manager, um die Installation von Bibliotheken direkt in Projekten zu unterstützen. Der folgende Screenshot zeigt, wie Sie den NuGet Package Manager öffnen.

Erstellen einer PDF-Datei mit Blazor Tutorial, Abbildung 4: Zugriff auf den NuGet-Paketmanager von Visual Studio

Zugriff auf den NuGet-Paketmanager von Visual Studio

Verwenden Sie das Suchfeld auf der Registerkarte Durchsuchen, um nach "IronPDF" zu suchen, wie in der folgenden Abbildung gezeigt:

Erstellen einer PDF-Datei mit Blazor Tutorial, Abbildung 5: Suche nach der IronPDF-Bibliothek in der NuGet Package Manager GUI

Suchen nach der IronPDF-Bibliothek in der NuGet Package Manager GUI

In der obigen Abbildung wird die Liste der verwandten Suchergebnisse angezeigt. Wählen Sie die erforderlichen Optionen, um das Paket in Ihr Projekt zu installieren.

3.2 Verwendung der Visual Studio-Befehlszeile

Gehen Sie in Visual Studio zu Tools > NuGet Package Manager > Package Manager Console

Geben Sie die folgende Zeile auf der Registerkarte Paketmanager-Konsole ein:

Install-Package IronPdf

Das Paket wird nun heruntergeladen und im aktuellen Projekt installiert.

Erstellen einer PDF-Datei mit Blazor Tutorial, Abbildung 6: Installieren der IronPDF Bibliothek mit der NuGet Package Manager Konsole

Installation der IronPDF-Bibliothek über die NuGet-Paketmanager-Konsole

3.3 Direktes Herunterladen von der NuGet-Website

Die dritte Möglichkeit, die IronPDF-Bibliothek zu installieren, besteht darin, das NuGet-Paket direkt von der Website herunterzuladen.

Navigieren Sie zu https://www.nuget.org/packages/IronPdf/

  • Klicken Sie im Menü auf der rechten Seite auf die Option "Paket herunterladen".
  • Öffnen Sie das heruntergeladene Paket in Ihrem Dateisystem. Sie wird automatisch installiert.
  • Laden Sie die Lösung neu und verwenden Sie sie in Ihrem Projekt.

3.4 Direktes Herunterladen von der IronPDF-Website

Klicken Sie auf diesen Link auf der IronPDF-Website, um das neueste Paket herunterladen direkt.

Führen Sie nach dem Herunterladen die folgenden Schritte aus, um das Paket zu Ihrem Projekt hinzuzufügen:

  • Klicken Sie mit der rechten Maustaste auf das Projekt im Lösungsfenster.
  • Wählen Sie die Option "Referenz" und navigieren Sie dann zum Speicherort der Bibliothek, die Sie zuvor heruntergeladen haben.
  • Klicken Sie auf OK, um die Bibliothek als Referenz hinzuzufügen.

4. PDF-Dokumente in der Blazor Server App erstellen

Die Blazor-Anwendung in diesem Tutorial verwendet IronPDF, um den HTML-Inhalt einer Webseite über ihre URL zu holen und in ein PDF-Dokument zu konvertieren.

Geben Sie den folgenden Quellcode in die im Projekt enthaltene .razor-Datei ein.

@using IronPdf;

public void ExportData()
{
    try
    {
        string fileName = "Demo.pdf";
        var renderer = new IronPdf.ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
        JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
    }
    catch (Exception ex)
    {

    }
}
@using IronPdf;

public void ExportData()
{
    try
    {
        string fileName = "Demo.pdf";
        var renderer = new IronPdf.ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
        JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
    }
    catch (Exception ex)
    {

    }
}
Private IronPdf As [using]

Public Sub ExportData()
	Try
		Dim fileName As String = "Demo.pdf"
		Dim renderer = New IronPdf.ChromePdfRenderer()
		Dim pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata")
		JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()))
	Catch ex As Exception

	End Try
End Sub
VB   C#

Das obige Codeschnipsel verwendet zwei Methoden, um PDF-Dokumente aus HTML zu erzeugen. Die erste ist IronPDFs renderUrlAsPdf methode, die den HTML-Inhalt von einer bestimmten URL herunterlädt und in ein PDF-Format konvertiert.

Die zweite Methode ist die statische Methode JSRuntime.InvokeVoidAsync, die die JavaScript-Engine des Browsers dazu veranlasst, eine JavaScript-Funktion im Rahmen der Webseite aufzurufen, die den PDF-Inhalt in einer Datei im Dateisystem des Clients speichert.

Diese JavaScript-Funktion ist weiter unten enthalten:

<script type="text/JavaScript">
    function saveAsFile(filename, bytesBase64) {
        if (navigator.msSaveBlob) {
            //Download document in Edge browser
            var data = window.atob(bytesBase64);
            var bytes = new Uint8Array(data.length);
            for (var i = 0; i < data.length; i++) {
                bytes [i] = data.charCodeAt(i);
            }
            var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
            navigator.msSaveBlob(blob, filename);
            window.navigator.msSaveOrOpenBlob(blob );
        }
        else {
            var link = document.createElement('a');
            link.download = filename;
            link.href = "data:application/octet-stream;base64," + bytesBase64;
            document.body.appendChild(link); // Needed for Firefox
            link.click();
            document.body.removeChild(link);
        }
    }
</script>
<script type="text/JavaScript">
    function saveAsFile(filename, bytesBase64) {
        if (navigator.msSaveBlob) {
            //Download document in Edge browser
            var data = window.atob(bytesBase64);
            var bytes = new Uint8Array(data.length);
            for (var i = 0; i < data.length; i++) {
                bytes [i] = data.charCodeAt(i);
            }
            var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
            navigator.msSaveBlob(blob, filename);
            window.navigator.msSaveOrOpenBlob(blob );
        }
        else {
            var link = document.createElement('a');
            link.download = filename;
            link.href = "data:application/octet-stream;base64," + bytesBase64;
            document.body.appendChild(link); // Needed for Firefox
            link.click();
            document.body.removeChild(link);
        }
    }
</script>
HTML

Die obige JavaScript-Funktion empfängt die Base64-Daten von Blazor und wandelt sie in einen Blob um, bevor sie am Client-Speicherort gespeichert wird.

Alternativ dazu kann die speichern als methode aus dem chromePdfRenderer klasse kann auch dazu verwendet werden, PDF-Dokumente im lokalen Speicher des Browsers zu speichern.

5. Ein PDF-Dokument aus einem HTML-String erstellen

Der folgende Codeschnipsel zeigt, wie eine HTML-Zeichenkette in ein Dokument umgewandelt werden kann.

var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>")
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>")
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'var pdf = New IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>")
VB   C#

Das vorangegangene Beispiel verwendet die renderHtmlAsPdf instanzmethode zur Umwandlung einer beliebigen HTML-Zeichenkette in PDF-Inhalte. Außerdem kann die Methode "SaveAs" in den zuvor beschriebenen Verfahren verwendet werden, um diese Inhalte auf dem Computer des Kunden zu speichern.

Erstellen einer PDF-Datei mit Blazor Tutorial, Abbildung 7: Die in diesem Tutorial erstellte Blazor-Anwendung zur PDF-Erzeugung

Die in diesem Tutorial erstellte Blazor-Anwendung zur PDF-Erzeugung

Der obige Screenshot zeigt die Webanwendung, die in diesem Lehrgang entwickelt wurde. Wenn Sie auf die Schaltfläche "Herunterladen" klicken, wird der C#-Code zur Erstellung des PDF-Inhalts und eine JavaScript-Funktion zum Herunterladen des PDF-Inhalts auf der Client-Seite ausgelöst.

Schlussfolgerung

In diesem Artikel wurde gezeigt, wie man eine Blazor-Webanwendung entwickelt, die die IronPDF PDF-Bibliothek verwendet, um PDF-Dateien aus Webseiten zu erzeugen.

IronPDF ist nicht quelloffen, aber ein kostenloser Testschlüssel können Sie es in der Produktion ohne Wasserzeichen verwenden.

< PREVIOUS
Blazor PDF Viewer Tutorial
NÄCHSTES >
Erstellen einer PDF-Datei in .NET MAUI mit IronPDF

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 11,308,499 Lizenzen anzeigen >