UTILISATION D'IRONPDF

Comment convertir CSHTML en PDF en C#

Mise à jour mars 10, 2024
Partager:

La conversion de CSHTML en PDF est une exigence courante dans de nombreuses applications. Cette tâche peut être facilement accomplie en utilisant la bibliothèque IronPDF en C#.

IronPDF est une bibliothèque .NET populaire qui permet aux développeurs de créer, lire, éditer et convertir des documents PDF de manière programmatique. Dans cet article, nous allons vous présenter les étapes de la conversion de CSHTML en PDF avec IronPDF en C#, ainsi que des exemples.

Avant de commencer, discutons de quelques concepts importants qui sont nécessaires pour ce tutoriel.

Concepts importants

Convertisseur PDF

Un convertisseur PDF est un outil qui convertit n'importe quel document imprimable ou page web en document PDF. Il peut être utilisé pour générer des fichiers PDF à partir de HTML, Word, Excel ou tout autre document imprimable. Les convertisseurs PDF se présentent sous différentes formes : outils en ligne, logiciels de bureau et bibliothèques.

Vue rasoir

Une vue Razor est un moteur de vue qui est utilisé dans ASP.NET Core pour générer des pages HTML de manière dynamique. Il s'agit d'une syntaxe de balisage qui combine le balisage HTML et le code C#.

Comment convertir CSHTML en PDF en C#, Figure 1 : Razor View Razor View

Razor view permet aux développeurs de créer facilement des pages web dynamiques en séparant la logique de présentation de la logique commerciale.

Classe de contrôleur

Une classe contrôleur est une classe C# qui gère les requêtes HTTP entrantes dans une application ASP.NET Core. Il contient des méthodes qui correspondent à des verbes HTTP spécifiques (par exemple, GET, POST, PUT, DELETE)et renvoie une réponse HTTP.

Gestionnaire de paquets NuGet

NuGet Package Manager est un outil utilisé dans Visual Studio pour gérer les paquets dans les projets .NET. Il permet aux développeurs d'installer, de mettre à jour et de désinstaller facilement les paquets dans leurs projets. Les paquets NuGet sont des bibliothèques qui contiennent du code réutilisable et sont distribués via le gestionnaire de paquets NuGet.

Injection de dépendance

L'injection de dépendances est un modèle de conception qui permet aux développeurs de découpler les composants de leurs applications en injectant des dépendances dans leurs classes. Il facilite le test et la maintenance des applications en réduisant les dépendances et en rendant le code plus modulaire.

Maintenant que nous avons couvert les concepts importants, plongeons dans le processus de conversion de CSHTML en PDF à l'aide d'IronPDF.

Qu'est-ce que le CSHTML ?

CSHTML signifie C# Razor Syntax HTML. Il s'agit d'un type de fichier qui contient à la fois des balises HTML et du code C#. Ces fichiers sont utilisés dans les applications AS.NET Core MVC pour définir l'interface utilisateur des pages web. Le moteur de visualisation Razor est utilisé pour interpréter les fichiers CSHTML et générer une sortie HTML qui peut être rendue par un navigateur web.

Comment convertir CSHTML en PDF en C#, Figure 2 : CSHTML5 CSHTML5

Qu'est-ce qu'IronPDF ?

IronPDF est une puissante bibliothèque .NET qui permet aux développeurs de créer, lire, modifier et convertir des documents PDF en C#. Il s'agit d'un outil populaire permettant de générer des documents PDF de manière programmatique dans les applications .NET. IronPDF prend en charge un large éventail de fonctions, notamment la génération de PDF, la manipulation de PDF, la conversion de PDF et le rendu de PDF.

Comment convertir CSHTML en PDF en C#, Figure 3 : IronPDF for .NET IronPDF for .NET

Comment convertir des chaînes de caractères HTML CSHTML en fichiers PDF avec IronPDF en C# ;

La conversion de CSHTML en PDF avec IronPDF est un processus simple. La bibliothèque fournit une API pratique pour convertir les fichiers HTML en documents PDF. Voici les étapes à suivre pour convertir CSHTML en PDF avec IronPDF en C# :

Étape 1 : Installer IronPDF

La première étape consiste à installer IronPDF dans votre projet C#. Vous pouvez installer IronPDF en utilisant le NuGet Package Manager ou en téléchargeant le fichier IronPDF.dll et en l'ajoutant aux références de votre projet. Pour installer IronPDF à l'aide du gestionnaire de paquets NuGet, ouvrez la console du gestionnaire de paquets et exécutez la commande suivante

Install-Package IronPdf

Étape 2 Créer un fichier CSHTML

Ensuite, créez un fichier CSHTML contenant le contenu que vous souhaitez convertir en PDF. Dans cet exemple, nous allons créer un simple CSHTML qui affiche le texte "Hello, World!".

@{
    Layout = null;
}
    Hello
    Hello, World!
@{
    Layout = null;
}
    Hello
    Hello, World!
@
If True Then
	Layout = Nothing
End If
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'	Hello Hello, World!
VB   C#

Enregistrez ce fichier sous "Hello.cshtml" dans le répertoire de votre projet.

Comment convertir CSHTML en PDF en C#, Figure 4 : Fichiers PDF en C# Fichiers PDF dans C#

Étape 3 Convertir CSHTML en document PDF

Pour convertir le CSHTML au format PDF, nous utiliserons la bibliothèque IronPDF en C#. Voici le code pour convertir "Hello.cshtml" en PDF :

using System.IO;
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace CSHTMLtoPDF.Controllers
{
    public class HomeController : Controller
    {
        private readonly IRazorViewRenderer _viewRenderService;
        public HomeController(IRazorViewRenderer viewRenderService)
        {
            _viewRenderService = viewRenderService;
        }
        public IActionResult Index()
        {
            var items = new [] { "Item 1", "Item 2", "Item 3" };
            return View(items);
        }
        public IActionResult DownloadPDF()
        {
            var items = new [] { "Item 1", "Item 2", "Item 3" };
            ChromePdfRenderer renderer = new ChromePdfRenderer();
            PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Index.cshtml", items);
            var contentDisposition = new Syste.NET.Mime.ContentDisposition
            {
                FileName = "Items.pdf",
                Inline = false,
            };
            Response.Headers.Add("Content-Disposition", contentDisposition.ToString());
            return File(pdf.BinaryData, "application/pdf");
        }
    }
}
using System.IO;
using IronPdf;
using Microsoft.AspNetCore.Mvc;
namespace CSHTMLtoPDF.Controllers
{
    public class HomeController : Controller
    {
        private readonly IRazorViewRenderer _viewRenderService;
        public HomeController(IRazorViewRenderer viewRenderService)
        {
            _viewRenderService = viewRenderService;
        }
        public IActionResult Index()
        {
            var items = new [] { "Item 1", "Item 2", "Item 3" };
            return View(items);
        }
        public IActionResult DownloadPDF()
        {
            var items = new [] { "Item 1", "Item 2", "Item 3" };
            ChromePdfRenderer renderer = new ChromePdfRenderer();
            PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Index.cshtml", items);
            var contentDisposition = new Syste.NET.Mime.ContentDisposition
            {
                FileName = "Items.pdf",
                Inline = false,
            };
            Response.Headers.Add("Content-Disposition", contentDisposition.ToString());
            return File(pdf.BinaryData, "application/pdf");
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Découvrons ce code étape par étape :

  • Nous commençons par importer les espaces de noms nécessaires, y compris l'espace de noms IronPDF, qui contient la fonctionnalité de conversion de HTML en PDF.
  • Nous définissons ensuite la méthode Index, qui renvoie simplement une liste d'éléments dans une vue Razor.
  • Nous définissons la méthode DownloadPDF, qui est responsable de la génération du document PDF.
  • Nous commençons par créer un moteur de rendu ChromePdfRenderer.
  • Utilisez ensuite la méthode d'extension RenderRazorViewToPdf pour générer une vue Razor avec des données dans un fichier PDF.
  • Nous définissons ensuite les en-têtes Content-Disposition pour forcer le téléchargement du PDF plutôt que son affichage dans le navigateur.
  • Enfin, nous renvoyons le document PDF sous forme de fichier à l'aide de la méthode File.

    Voici le code de base pour convertir CSHTML en PDF avec IronPDF en C#. Cependant, il existe de nombreuses options et paramètres que vous pouvez utiliser pour personnaliser la sortie PDF. Examinons quelques-unes de ces options.

Personnalisation du fichier de retour de la sortie PDF

IronPDF propose de nombreuses options pour personnaliser la sortie du fichier PDF. Vous pouvez définir des options telles que taille de la page, marges, orientation, l'en-tête et le pied de pageet bien d'autres choses encore. Voici un exemple de personnalisation de la sortie PDF :

using IronPdf;
namespace ConsoleApp
{
    class Program
    {
        static void Main(string [] args)
        {
            var renderer = new ChromePdfRenderer();
            renderer.RenderingOptions.MarginTop = 10;
            renderer.RenderingOptions.MarginBottom = 10;
            renderer.RenderingOptions.MarginLeft = 20;
            renderer.RenderingOptions.MarginRight = 20;
            renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
            {
                MaxHeight = 20, //millimeters
                HtmlFragment = "<img src='logo.png'>",
                BaseUrl = new Uri(@"C:\assets\images\").AbsoluteUri
            };
            renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
            {
                MaxHeight = 15, //millimeters
                HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
                DrawDividerLine = true
            };
            var pdf = renderer.RenderHtmlAsPdf("\r\n\r\n\r\n    \r\n    Hello\r\n\r\n\r\n    Hello, World!\r\n\r\n");
            pdf.SaveAs("Hello.PDF");
        }
    }
}
using IronPdf;
namespace ConsoleApp
{
    class Program
    {
        static void Main(string [] args)
        {
            var renderer = new ChromePdfRenderer();
            renderer.RenderingOptions.MarginTop = 10;
            renderer.RenderingOptions.MarginBottom = 10;
            renderer.RenderingOptions.MarginLeft = 20;
            renderer.RenderingOptions.MarginRight = 20;
            renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
            {
                MaxHeight = 20, //millimeters
                HtmlFragment = "<img src='logo.png'>",
                BaseUrl = new Uri(@"C:\assets\images\").AbsoluteUri
            };
            renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
            {
                MaxHeight = 15, //millimeters
                HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
                DrawDividerLine = true
            };
            var pdf = renderer.RenderHtmlAsPdf("\r\n\r\n\r\n    \r\n    Hello\r\n\r\n\r\n    Hello, World!\r\n\r\n");
            pdf.SaveAs("Hello.PDF");
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Dans cet exemple, nous commençons par créer une instance de la classe ChromePdfRenderer. Nous définissons ensuite diverses options en utilisant la propriété RenderingOptions de la classe ChromePdfRenderer. Voici quelques-unes des options que nous avons définies :

  • PaperSize: Définit la taille du papier du document PDF au format A4.
  • MarginTop, MarginBottom, MarginLeft, 'MarginRight` : Définit les marges du document PDF à 10 mm en haut et en bas et à 20 mm à gauche et à droite.
  • HtmlHeader : Définit l'en-tête du document PDF pour afficher le titre du document et une ligne de séparation.
  • HtmlFooter : Définit le pied de page du document PDF pour afficher le numéro de page, le nombre total de pages et la date du jour.

    Après avoir défini les options, nous appelons la fonction RenderHtmlAsPdf (RenduHtmlAsPdf) avec le même contenu HTML que précédemment. Enfin, nous enregistrons le document PDF dans un fichier nommé "Hello.PDF".

Tester l'application

Avec tout le code nécessaire en place, nous pouvons maintenant tester l'application. Procédez comme suit :

  • Exécutez l'application en appuyant sur F5 ou en cliquant sur le bouton vert "Play" dans Visual Studio.
  • Dans votre navigateur web, naviguez jusqu'à http://localhost:/Home/Index, où se trouve le numéro de port assigné par Visual Studio.
  • Vérifiez que la liste des éléments s'affiche correctement.
  • Cliquez sur le lien "Télécharger le PDF" pour générer et télécharger le document PDF.

    Si tout fonctionne correctement, vous devriez voir apparaître un document PDF contenant la liste des éléments que vous avez définis précédemment.

Convertir un PDF en un fichier CSHTML avec IronPDF

Comment convertir CSHTML en PDF en C#, Figure 7 : PDF To CSHTML PDF vers CSHTML

Pour démontrer comment convertir un PDF en un fichier CSHTML avec IronPDF, nous allons créer une nouvelle application console dans Visual Studio et utiliser IronPDF pour convertir un exemple de document PDF en un fichier CSHTML. Suivez les étapes suivantes :

Étape 1 Créer une nouvelle application console

Ouvrez Visual Studio et créez une nouvelle application console en sélectionnant "Fichier > Nouveau > Projet" dans le menu, puis en sélectionnant "Application console" (framework .NET)"ou "Console App (.NET Core)"dans la liste des modèles de projet.

Étape 2 Installer le paquetage NuGet IronPDF

Ensuite, nous devons installer le package NuGet IronPDF dans notre application console. Pour ce faire, cliquez avec le bouton droit de la souris sur le projet dans l'explorateur de solutions et sélectionnez "Manage NuGet Packages" dans le menu contextuel.

Dans le gestionnaire de paquets NuGet, recherchez "IronPDF" et sélectionnez le paquetage "IronPDF" dans les résultats de la recherche. Cliquez sur le bouton "Installer" pour installer le paquet et ses dépendances.

Étape 3 Ajouter les fichiers PDF et CSHTML au projet

Pour cet exemple, nous utiliserons un exemple de fichier PDF que nous voulons convertir en fichier CSHTML. Vous pouvez utiliser n'importe quel fichier PDF pour cette étape.

Ajoutez le fichier PDF au projet en cliquant avec le bouton droit de la souris sur le projet dans l'explorateur de solutions et en sélectionnant "Ajouter > Élément existant" dans le menu contextuel.

Nous devons également créer un fichier CSHTML vide que nous utiliserons pour stocker la chaîne HTML convertie. Pour ce faire, cliquez avec le bouton droit de la souris sur le projet dans l'explorateur de solutions et sélectionnez "Ajouter > Nouvel élément" dans le menu contextuel. Sélectionnez "Page HTML" dans la liste des modèles, puis donnez un nom au fichier (par exemple "converti.cshtml") et cliquez sur "Ajouter".

Étape 4 Convertir le PDF en fichier CSHTML

Avec les fichiers nécessaires en place, nous pouvons maintenant écrire le code pour convertir le PDF en un fichier CSHTML à l'aide d'IronPDF. Ajoutez le code suivant à la méthode Main de votre application console :

using IronPdf;
namespace PdfToHtml
{
    class Program
    {
        static void Main(string [] args)
        {
            // Load the PDF file
            PdfDocument pdf = PdfDocument.FromFile("sample.PDF");
            // Convert the PDF to an HTML string
            string html = pdf.ToHtml();
            // Save the HTML string to the CSHTML file
        }
    }
}
using IronPdf;
namespace PdfToHtml
{
    class Program
    {
        static void Main(string [] args)
        {
            // Load the PDF file
            PdfDocument pdf = PdfDocument.FromFile("sample.PDF");
            // Convert the PDF to an HTML string
            string html = pdf.ToHtml();
            // Save the HTML string to the CSHTML file
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Pourquoi devriez-vous utiliser IronPDF ?

IronPDF est un choix populaire parmi les développeurs .NET pour quelques raisons essentielles :

Des capacités puissantes de génération de PDF** : IronPDF offre un large éventail de fonctionnalités et d'options pour créer et manipuler des documents PDF de manière programmatique, notamment la possibilité d'ajouter du texte, des images et d'autres contenus aux pages PDF, ainsi que la possibilité de fusionner et de diviser des documents PDF existants.

Capacités polyvalentes de conversion de PDF : IronPDF permet non seulement aux développeurs de générer des documents PDF, mais offre également une fonctionnalité de conversion des PDF en chaînes HTML ou en fichiers CSHTML. Cela peut s'avérer utile lorsque vous devez afficher du contenu PDF dans une application Web ou extraire des données de documents PDF et les utiliser dans un flux de travail basé sur le Web.

Facile à utiliser API : L'API d'IronPDF est conçue pour être intuitive et facile à utiliser, avec un large éventail de méthodes et de propriétés d'aide qui permettent aux développeurs de générer et de manipuler facilement des documents PDF par programme.

Forte communauté support : IronPDF dispose d'une communauté importante et active de développeurs .NET qui contribuent à son développement et apportent leur soutien aux autres développeurs qui utilisent la bibliothèque.

Bonne documentation : La documentation d'IronPDF est complète et bien organisée, avec une documentation de référence détaillée sur les API, des tutoriels et des exemples qui permettent aux développeurs de démarrer facilement et d'apprendre à utiliser la bibliothèque.

La combinaison des puissantes capacités de génération et de conversion de PDF, de l'API facile à utiliser, de la forte assistance de la communauté et de la bonne documentation d'IronPDF en fait un choix populaire parmi les développeurs .NET qui doivent travailler avec des documents PDF dans leurs applications.

Conclusion

La conversion de CSHTML en PDF est une exigence courante dans de nombreuses applications. Avec IronPDF, cette tâche peut être facilement accomplie en C#. Dans cet article, nous vous avons présenté les étapes de la conversion de CSHTML en PDF avec IronPDF, accompagnées d'exemples.

Nous vous avons également montré comment personnaliser la sortie PDF en définissant diverses options telles que la taille du papier, les marges, l'en-tête et le pied de page, etc. Avec IronPDF, vous pouvez créer rapidement et facilement des documents PDF de haute qualité à partir de vos fichiers CSHTML.

Que vous ayez besoin de créer des documents PDF à partir de zéro, de convertir des PDF en chaînes HTML ou en fichiers CSHTML, ou d'extraire des données de documents PDF, IronPDF propose une API souple et intuitive qui facilite la réalisation des tâches.

Grâce au soutien de la communauté et à une documentation complète, IronPDF est un choix populaire parmi les développeurs .NET qui ont besoin de travailler avec des PDF dans leurs applications. En achetant le package Iron Software, les développeurs peuvent accéder à un ensemble complet de bibliothèques .NET pour travailler avec les formats de fichiers courants à un prix réduit, ce qui en fait une excellente valeur pour toute équipe de développement .NET.

Si vous avez besoin de travailler avec des documents PDF dans vos applications .NET, IronPDF vaut vraiment la peine d'être considéré. Avec ses puissantes fonctionnalités, sa facilité d'utilisation et sa gamme d'options de licence, il s'agit d'un outil polyvalent et fiable qui peut vous aider à accomplir votre travail rapidement et efficacement.

< PRÉCÉDENT
Comment fusionner des fichiers PDF en VB.NET
SUIVANT >
Comment enregistrer un fichier PDF en C# (Tutoriel pour débutants)