Comment utiliser IronPDF avec Blazor pour la génération de PDF | IronPDF

IronPDF on Blazor Server App (HTML to PDF Tutorial)

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF est compatible avec .NET 6 et inclut des types de projet tels que Blazor. En utilisant Visual Studio, vous pouvez ajouter IronPDF à votre projet Blazor Server App et l'utiliser comme illustré dans l'exemple suivant :

Démarrage rapide : Rendre facilement des PDFs dans Blazor Server

Commencez rapidement avec IronPDF dans vos applications Blazor Server. Cet exemple montre comment rendre du contenu HTML en PDF avec une configuration minimale. Avec seulement quelques lignes de code, transformez vos composants Blazor en PDFs au look professionnel. Idéal pour les développeurs cherchant à intégrer des fonctionnalités PDF sans effort dans leurs projets Blazor.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. Copy and run this code snippet.

    IronPdf.HtmlToPdf.RenderHtmlAsPdf(htmlContent).SaveAs(outputPath);
  3. Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

Flux de travail minimum (5 étapes)

  1. Installez la bibliothèque HTML-vers-PDF pour les applications Blazor
  2. Créez un nouveau projet Blazor dans Visual Studio.
  3. Convertissez les pages web par URL en documents PDF
  4. Rendez les pages web dans le navigateur web du client
  5. Affichez des documents PDF à partir de chaînes HTML

Créez un nouveau projet de serveur Blazor

Créez un nouveau projet et sélectionnez le type Blazor Server App.

class="content-img-align-center">
class="center-image-wrapper"> Image de création de projet Blazor

Installez IronPDF dans votre projet Blazor

Après avoir créé le projet, suivez les étapes suivantes pour installer la bibliothèque IronPDF à partir de NuGet dans Visual Studio.

  1. Dans la fenêtre Explorateur de solutions de Visual Studio, cliquez droit sur Références et choisissez Gérer les packages NuGet.
  2. Sélectionnez Parcourir et recherchez IronPdf.
  3. Sélectionnez la dernière version du package, cochez la case de votre projet et cliquez sur installer.

Alternativement, vous pouvez utiliser la CLI .NET pour l'installer :

Install-Package IronPdf

Ajoutez un nouveau composant Razor

Une fois IronPDF installé dans votre projet Blazor, commencez par ajouter un nouveau composant Razor. Pour ce tutoriel, nous le nommerons "IronPdfComponent" :

class="content-img-align-center">
class="center-image-wrapper"> Image du composant Blazor IronPDF

Après cela, mettez à jour le code comme suit :

@page "/IronPdf"
@inject IJSRuntime JS

<h3>IronPdfComponent</h3>

<EditForm Model="@_InputMsgModel" id="inputText">
  <div>
    <InputTextArea @bind-Value="@_InputMsgModel.HTML" rows="20" />
  </div>
  <div>
    <button type="button" @onclick="@SubmitHTML">Render HTML</button>
  </div>
</EditForm>
@page "/IronPdf"
@inject IJSRuntime JS

<h3>IronPdfComponent</h3>

<EditForm Model="@_InputMsgModel" id="inputText">
  <div>
    <InputTextArea @bind-Value="@_InputMsgModel.HTML" rows="20" />
  </div>
  <div>
    <button type="button" @onclick="@SubmitHTML">Render HTML</button>
  </div>
</EditForm>
HTML
@code {

    // Model to bind user input
    private InputHTMLModel _InputMsgModel = new InputHTMLModel();

    private async Task SubmitHTML()
    {
        // Set your IronPDF license key
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

        // Create a renderer to convert HTML to PDF
        var render = new IronPdf.ChromePdfRenderer();

        // Render the HTML input into a PDF document
        var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);

        var fileName = "iron.pdf";

        // Create a stream reference for the PDF content
        using var streamRef = new DotNetStreamReference(stream: doc.Stream);

        // Invoke JavaScript function to download the PDF in the browser
        await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
    }

    public class InputHTMLModel
    {
        public string HTML { get; set; } = "My new message";
    }
}
@code {

    // Model to bind user input
    private InputHTMLModel _InputMsgModel = new InputHTMLModel();

    private async Task SubmitHTML()
    {
        // Set your IronPDF license key
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

        // Create a renderer to convert HTML to PDF
        var render = new IronPdf.ChromePdfRenderer();

        // Render the HTML input into a PDF document
        var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);

        var fileName = "iron.pdf";

        // Create a stream reference for the PDF content
        using var streamRef = new DotNetStreamReference(stream: doc.Stream);

        // Invoke JavaScript function to download the PDF in the browser
        await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
    }

    public class InputHTMLModel
    {
        public string HTML { get; set; } = "My new message";
    }
}
code
If True Then

	' Model to bind user input
	private InputHTMLModel _InputMsgModel = New InputHTMLModel()

'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'	private async Task SubmitHTML()
'	{
'		' Set your IronPDF license key
'		IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
'
'		' Create a renderer to convert HTML to PDF
'		var render = New IronPdf.ChromePdfRenderer();
'
'		' Render the HTML input into a PDF document
'		var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);
'
'		var fileName = "iron.pdf";
'
'		' Create a stream reference for the PDF content
'		var streamRef = New DotNetStreamReference(stream: doc.Stream);
'
'		' Invoke JavaScript function to download the PDF in the browser
'		await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
'	}

'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'	public class InputHTMLModel
'	{
'		public string HTML
'		{
'			get;
'			set;
'		} = "My new message";
'	}
End If
$vbLabelText   $csharpLabel

Ajoutez ce code JavaScript à _layout.cshtml pour permettre le téléchargement du PDF rendu par IronPDF dans l'application Blazor :

<script>
    // JavaScript function to download PDFs generated by IronPdf
    window.SubmitHTML = async (fileName, contentStreamReference) => {
        // Get the PDF content as an ArrayBuffer
        const arrayBuffer = await contentStreamReference.arrayBuffer();

        // Create a Blob from the ArrayBuffer
        const blob = new Blob([arrayBuffer]);

        // Create an object URL for the Blob
        const url = URL.createObjectURL(blob);

        // Create an anchor element to initiate the download
        const anchorElement = document.createElement("a");
        anchorElement.href = url;
        anchorElement.download = fileName ?? "download.pdf";

        // Programmatically click the anchor to start the download
        anchorElement.click();

        // Clean up by removing the anchor and revoking the object URL
        anchorElement.remove();
        URL.revokeObjectURL(url);
    };
</script>
<script>
    // JavaScript function to download PDFs generated by IronPdf
    window.SubmitHTML = async (fileName, contentStreamReference) => {
        // Get the PDF content as an ArrayBuffer
        const arrayBuffer = await contentStreamReference.arrayBuffer();

        // Create a Blob from the ArrayBuffer
        const blob = new Blob([arrayBuffer]);

        // Create an object URL for the Blob
        const url = URL.createObjectURL(blob);

        // Create an anchor element to initiate the download
        const anchorElement = document.createElement("a");
        anchorElement.href = url;
        anchorElement.download = fileName ?? "download.pdf";

        // Programmatically click the anchor to start the download
        anchorElement.click();

        // Clean up by removing the anchor and revoking the object URL
        anchorElement.remove();
        URL.revokeObjectURL(url);
    };
</script>
JAVASCRIPT

Éditez le fichier NavMenu.razor dans le dossier Shared pour inclure un onglet de navigation vers notre nouveau composant Razor. Ajoutez le code suivant :

<div class="nav-item px-3">
    <NavLink class="nav-link" href="IronPdf">
        <span class="oi oi-list-rich" aria-hidden="true"></span> IronPdf
    </NavLink>
</div>
<div class="nav-item px-3">
    <NavLink class="nav-link" href="IronPdf">
        <span class="oi oi-list-rich" aria-hidden="true"></span> IronPdf
    </NavLink>
</div>
HTML

Une fois que tout cela est appliqué, vous pouvez exécuter votre solution, et vous devriez voir ceci :

class="content-img-align-center">
class="center-image-wrapper"> Image de la page d'exécution Blazor IronPDF

Questions Fréquemment Posées

Comment une bibliothèque PDF s'intègre-t-elle à une application Blazor Server ?

IronPDF permet la génération et la manipulation de PDF dans les applications .NET, y compris les applications Blazor Server. Il peut être intégré en utilisant Visual Studio et NuGet pour la conversion HTML en PDF.

Comment installer une bibliothèque PDF dans un projet Blazor ?

Pour installer IronPDF dans un projet Blazor, naviguez jusqu'à l'explorateur de solutions dans Visual Studio, cliquez avec le bouton droit sur 'Références', sélectionnez 'Gérer les packages NuGet', recherchez 'IronPdf' et installez-le. Alternativement, utilisez l'interface de ligne de commande .NET avec dotnet add package IronPdf.

Quelles sont les étapes pour créer une nouvelle application Blazor Server pour une bibliothèque PDF ?

Pour créer une nouvelle application Blazor Server, ouvrez Visual Studio, créez un nouveau projet et sélectionnez le modèle d'application Blazor Server. Après avoir configuré votre projet, intégrez IronPDF pour gérer la génération de PDF.

Comment puis-je rendre HTML en PDF dans une application Blazor en utilisant une bibliothèque PDF ?

Après avoir installé IronPDF, ajoutez un nouveau composant Razor, injectez IJSRuntime, et utilisez IronPdf.ChromePdfRenderer pour rendre l'entrée HTML dans un document PDF. Implémentez des fonctions JavaScript dans _layout.cshtml pour télécharger le PDF généré.

Comment puis-je visualiser des PDF dans une application Blazor côté serveur ?

Pour visualiser des PDF dans une application Blazor côté serveur, convertissez des pages Web par URL en documents PDF à l'aide de IronPDF, puis rendez ces PDF dans le navigateur Web du client.

Quel est le rôle de JavaScript dans le téléchargement de PDF dans une application Blazor ?

JavaScript est utilisé pour créer une fonction qui télécharge les PDF générés par IronPDF. Il convertit le contenu PDF en un Blob et clique programmatiquement sur un élément ancre pour initier le téléchargement, garantissant que le PDF est enregistré sur l'appareil de l'utilisateur.

Comment puis-je ajouter un onglet de navigation pour le composant PDF dans une application Blazor ?

Pour ajouter un onglet de navigation pour le composant PDF, éditez le fichier NavMenu.razor dans le dossier Shared et incluez un élément NavLink dirigeant vers la route du PDF.

Qu'est-ce qu'un composant Razor dans le contexte de Blazor et d'une bibliothèque PDF ?

Un composant Razor dans Blazor est une partie réutilisable de l'interface utilisateur définie dans les fichiers .razor. Dans le contexte de IronPDF, il est utilisé pour gérer l'interface utilisateur et la logique pour convertir une entrée HTML en PDF.

Comment puis-je résoudre les problèmes liés à la génération de PDF dans Blazor ?

Si vous rencontrez des problèmes avec la génération de PDF dans Blazor, vérifiez que IronPDF est correctement installé et que votre entrée HTML est valide. Assurez-vous que les fonctions JavaScript sont correctement configurées pour gérer les téléchargements de fichiers.

Puis-je convertir des pages Web entières en PDF dans des applications Blazor ?

Oui, IronPDF vous permet de convertir des pages Web entières en PDF dans les applications Blazor en utilisant la fonction de conversion URL vers PDF.

IronPDF est-il compatible avec .NET 10 lors de la création d'applications Blazor ?

Oui. IronPDF est entièrement compatible avec .NET 10 et prend en charge son environnement d'exécution, ASP.NET Core et Blazor. Il fonctionne immédiatement dans les projets .NET 10, bénéficiant ainsi d'améliorations de performances et de fonctionnalités de langage optimisées. ([ironpdf.com](https://ironpdf.com/?utm_source=openai))

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 16,154,058 | Version : 2025.11 vient de sortir