Passer au contenu du pied de page
UTILISATION DE IRONPDF

Comment créer un PdfViewer ASP.NET Core MVC avec IronPDF for .NET

Les navigateurs modernes intègrent une visionneuse PDF qui s'active automatiquement lorsqu'une application web propose des fichiers PDF avec le bon type MIME. Les utilisateurs peuvent ainsi afficher des documents PDF directement dans leur navigateur, sans avoir à recourir à des outils ou à des plugins tiers. IronPDF, une bibliothèque PDF .NET fréquemment mise à jour, simplifie la génération, le rendu et l'affichage de fichiers PDF au sein des applications ASP.NET Core MVC.

Dans cet article, nous allons vous montrer comment créer une application web ASP.NET Core MVC PDFViewer en utilisant le moteur de rendu IronPDF for NET. L'objectif principal de ce guide est d'obtenir des résultats parfaits au pixel près tout en maintenant des performances élevées.

Commencez avec IronPDF maintenant.
green arrow pointer

Comment les navigateurs modernes affichent-ils les fichiers PDF ?

Les navigateurs modernes tels que Chrome, Firefox, Edge et Safari intègrent une fonctionnalité native de visualisation des PDF. Lorsque votre application ASP.NET Core renvoie un fichier avec le type de contenu application/pdf, le navigateur rend le document PDF en ligne sans nécessiter Adobe Acrobat ou des plugins externes. Cette visionneuse PDF intégrée prend en charge des fonctions essentielles telles que la sélection de texte, l'impression, les commandes de zoom, les signets et la navigation dans les pages, créant ainsi une expérience complète de visualisation de documents.

Pour servir en toute sécurité les fichiers existants, la meilleure pratique consiste à utiliser l'environnement d'hébergement pour les localiser plutôt que de s'appuyer sur des chemins d'accès aux répertoires qui peuvent changer entre le développement et la production. En outre, l'utilisation d'un flux de fichiers est souvent plus efficace en termes de mémoire que le chargement de tableaux d'octets entiers pour les documents volumineux.

using Microsoft.AspNetCore.Mvc;
public class DocumentController : Controller
{
    public IActionResult ViewPdf()
    {
        // Path to an existing PDF file in the wwwroot folder
        string path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "documents", "sample.pdf");
        byte[] fileBytes = System.IO.File.ReadAllBytes(path);
        // Return file for inline browser display
        return File(fileBytes, "application/pdf");
    }
}
using Microsoft.AspNetCore.Mvc;
public class DocumentController : Controller
{
    public IActionResult ViewPdf()
    {
        // Path to an existing PDF file in the wwwroot folder
        string path = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "documents", "sample.pdf");
        byte[] fileBytes = System.IO.File.ReadAllBytes(path);
        // Return file for inline browser display
        return File(fileBytes, "application/pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDF Viewer : Affichage de notre fichier PDF

Comment créer un PdfViewer ASP.NET Core MVC avec IronPDF : Image 1 - Exemple de PDF affiché dans le navigateur

Le code ci-dessus lit un fichier PDF existant sur le serveur et le renvoie au navigateur. La méthode File() accepte un tableau d'octets et un type de contenu, indiquant au visualiseur de documents du navigateur de rendre le contenu en ligne. Cette approche fonctionne dans tous les navigateurs modernes, tant sur les ordinateurs de bureau que sur les appareils mobiles, offrant ainsi une expérience cohérente à tous les utilisateurs.

Comment les développeurs peuvent-ils générer des documents PDF de manière dynamique ?

Les fichiers PDF statiques sont utiles, mais de nombreuses applications web nécessitent des documents générés dynamiquement. La classe ChromePdfRenderer d'IronPDF convertit le contenu HTML en fichiers PDF au rendu professionnel. Pour commencer, installez IronPDF via les paquets NuGet dans Visual Studio.

Vous pouvez inclure des ressources externes, telles que CSS pour votre thème spécifique ou JavaScript pour les graphiques, directement dans la chaîne HTML.

using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class ReportController : Controller
{
    public IActionResult GenerateReport()
    {
        var renderer = new ChromePdfRenderer();
        // HTML content with CSS styling
        string HTML = @"
            <html>
            <head>
                <style>
                    body { font-family: Arial, sans-serif; padding: 40px; }
                    h1 { color: #2c3e50; }
                    .report-body { line-height: 1.6; }
                </style>
            </head>
            <body>
                <h1>Monthly Sales Report</h1>
                <div class='report-body'>
                    <p>Generated: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
                    <p>This report contains the latest sales figures.</p>
                </div>
            </body>
            </html>";
        PdfDocument PDF = renderer.RenderHtmlAsPdf(html);
        return File(pdf.BinaryData, "application/pdf");
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class ReportController : Controller
{
    public IActionResult GenerateReport()
    {
        var renderer = new ChromePdfRenderer();
        // HTML content with CSS styling
        string HTML = @"
            <html>
            <head>
                <style>
                    body { font-family: Arial, sans-serif; padding: 40px; }
                    h1 { color: #2c3e50; }
                    .report-body { line-height: 1.6; }
                </style>
            </head>
            <body>
                <h1>Monthly Sales Report</h1>
                <div class='report-body'>
                    <p>Generated: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
                    <p>This report contains the latest sales figures.</p>
                </div>
            </body>
            </html>";
        PdfDocument PDF = renderer.RenderHtmlAsPdf(html);
        return File(pdf.BinaryData, "application/pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDF généré puis affiché dans notre visualiseur de documents

Comment créer un PdfViewer ASP.NET Core MVC avec IronPDF : Image 2 - Rendre un document PDF à partir d'un contenu HTML, puis l'afficher

Cet exemple montre comment IronPDF transforme une chaîne HTML en un document PDF. Le ChromePdfRenderer utilise un moteur basé sur Chromium, garantissant un rendu CSS précis et la prise en charge de JavaScript. Le PDF généré conserve tous les styles définis dans le corps HTML, ce qui le rend idéal pour la création de rapports, de factures et d'autres documents nécessitant une mise en forme cohérente. Le contrôleur traite la demande et l'application renvoie le rendu aux utilisateurs.

Pour obtenir des informations supplémentaires et des exemples de code sur la conversion HTML en PDF, explorez la documentation complète d'IronPDF.

Quelles sont les options disponibles pour l'affichage en ligne par rapport au téléchargement ?

Les utilisateurs ont parfois besoin de télécharger des fichiers PDF plutôt que de les afficher dans le navigateur. Vous pouvez avoir un lien sur votre page d'accueil qui dirige les utilisateurs vers ces rapports. La manière dont le navigateur traite la réponse dépend de l'en-tête Content-Disposition.

using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class PdfController : Controller
{
    public IActionResult DisplayInline()
    {
        var renderer = new ChromePdfRenderer();
        PdfDocument PDF = renderer.RenderUrlAsPdf("https://example.com");
        // Display PDF inline in browser
        return File(pdf.BinaryData, "application/pdf");
    }
    public IActionResult DownloadPdf()
    {
        var renderer = new ChromePdfRenderer();
        PdfDocument PDF = renderer.RenderUrlAsPdf("https://example.com");
        // Prompt download with specified filename
        return File(pdf.BinaryData, "application/pdf", "webpage-report.pdf");
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class PdfController : Controller
{
    public IActionResult DisplayInline()
    {
        var renderer = new ChromePdfRenderer();
        PdfDocument PDF = renderer.RenderUrlAsPdf("https://example.com");
        // Display PDF inline in browser
        return File(pdf.BinaryData, "application/pdf");
    }
    public IActionResult DownloadPdf()
    {
        var renderer = new ChromePdfRenderer();
        PdfDocument PDF = renderer.RenderUrlAsPdf("https://example.com");
        // Prompt download with specified filename
        return File(pdf.BinaryData, "application/pdf", "webpage-report.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDF rendu et affiché en ligne

Comment créer un PdfViewer ASP.NET Core MVC avec IronPDF : Image 3 - Document PDF visualisé en ligne après avoir été rendu à partir du contenu de l'URL

La différence entre ces deux actions du contrôleur réside dans le troisième paramètre de la méthode File(). Lorsque vous fournissez un nom de fichier, ASP.NET Core ajoute automatiquement l'en-tête Content-Disposition : attachment, invitant les utilisateurs à télécharger le fichier. L'omission du paramètre de nom de fichier utilise le mode d'affichage en ligne par défaut.

Cette flexibilité permet à votre application de prendre en charge les deux scénarios de visualisation en fonction de la demande de l'utilisateur ou des exigences du projet.

Comment Razor Pages peut-il s'intégrer à la génération de PDF de .NET Core?

Les Razor Pages dans ASP.NET Core MVC constituent une autre approche pour la mise en œuvre d'un contrôle de visualisation PDF .NET. Le modèle de page peut générer et renvoyer des fichiers PDF en utilisant la même fonctionnalité IronPDF.

using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
public class InvoiceModel : PageModel
{
    public IActionResult OnGet(int id)
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        string HTML = $@"
            <html>
            <body>
                <h1>Invoice #{id}</h1>
                <p>Date: {DateTime.Now:yyyy-MM-dd}</p>
                <p>Thank you for your business!</p>
            </body>
            </html>";
        PdfDocument PDF = renderer.RenderHtmlAsPdf(html);
        return File(pdf.BinaryData, "application/pdf");
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
public class InvoiceModel : PageModel
{
    public IActionResult OnGet(int id)
    {
        var renderer = new ChromePdfRenderer();
        // Configure rendering options
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        string HTML = $@"
            <html>
            <body>
                <h1>Invoice #{id}</h1>
                <p>Date: {DateTime.Now:yyyy-MM-dd}</p>
                <p>Thank you for your business!</p>
            </body>
            </html>";
        PdfDocument PDF = renderer.RenderHtmlAsPdf(html);
        return File(pdf.BinaryData, "application/pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Sortie

Comment créer un PdfViewer ASP.NET Core MVC avec IronPDF : Image 4 - PDF généré

Cet exemple de Razor Pages montre comment le gestionnaire OnGet génère un PDF à partir d'un paramètre URL. La propriété RenderingOptions permet de personnaliser les marges, l'orientation de la page et d'autres paramètres. Pour plus d'informations, explorez la documentation sur les options de rendu d'IronPDF.

Conclusion

La création d'une visionneuse ASP.NET Core MVC pour les documents PDF combine les capacités natives du navigateur avec les puissantes fonctionnalités de génération d'IronPDF. La visionneuse PDF intégrée dans les navigateurs modernes gère automatiquement les fonctions d'affichage, d'impression et de navigation lorsque votre contrôleur ASP renvoie des fichiers avec le bon type MIME. IronPDF simplifie la création de documents PDF professionnels à partir de HTML, d'URL ou de fichiers existants, avec une prise en charge complète des CSS, JavaScript et des options de rendu personnalisées.

Qu'il s'agisse de construire une simple visionneuse de documents pour afficher des fichiers PDF ou de mettre en œuvre un système de génération de rapports, IronPDF fournit les outils et les fonctionnalités nécessaires à une intégration transparente des PDF. La bibliothèque .NET s'intègre harmonieusement à votre application web ASP.NET Core.

Démarrez votre essai gratuit pour explorer toutes les capacités d'IronPDF, ou achetez une licence pour une utilisation en production.

Questions Fréquemment Posées

Comment puis-je afficher des fichiers PDF dans des applications ASP.NET Core MVC ?

Vous pouvez afficher des fichiers PDF dans des applications ASP.NET Core MVC en utilisant IronPDF. Il vous permet de générer, de rendre et d'afficher des fichiers PDF directement dans le navigateur à l'aide des visionneuses PDF modernes intégrées.

Ai-je besoin de plugins tiers pour visualiser les PDF dans un navigateur ?

Non, les navigateurs modernes ont des visionneurs PDF intégrés qui s'activent automatiquement lorsqu'ils servent des fichiers PDF avec le bon type MIME. IronPDF peut vous aider à vous assurer que vos PDF sont servis correctement.

Quel est l'avantage d'utiliser IronPDF pour ASP.NET Core MVC ?

IronPDF est une bibliothèque PDF .NET qui simplifie le processus de génération et de rendu des documents PDF au sein des applications ASP.NET Core MVC, en améliorant la productivité et en rationalisant la gestion des PDF.

IronPDF peut-il fonctionner avec les visionneuses de PDF des navigateurs existants ?

Oui, IronPDF fonctionne de manière transparente avec les visionneuses de PDF des navigateurs existants en veillant à ce que les PDF soient servis avec le bon type MIME pour un affichage automatique dans le navigateur.

IronPDF est-il fréquemment mis à jour ?

Oui, IronPDF est une bibliothèque PDF .NET fréquemment mise à jour, offrant les dernières fonctionnalités et améliorations pour le traitement des documents PDF dans les applications ASP.NET Core MVC.

Comment IronPDF gère-t-il la génération de PDF dans les applications web ?

IronPDF offre des fonctionnalités robustes pour générer des PDF à partir de différents types de contenu, permettant aux développeurs de créer des documents PDF dynamiques et interactifs au sein d'applications web.

Quel type MIME doit-on utiliser pour les fichiers PDF ?

Pour garantir un affichage correct dans les navigateurs, les fichiers PDF doivent être servis avec le type MIME " application/pdf ". IronPDF peut vous aider à gérer efficacement cet aspect.

Puis-je personnaliser le rendu des PDF dans IronPdf ?

Oui, IronPDF offre des options de personnalisation étendues pour le rendu des PDF, ce qui vous permet d'adapter le résultat à des exigences spécifiques en matière de conception et de fonctionnalité.

IronPDF prend-il en charge uniquement les applications ASP.NET Core MVC ?

Si IronPDF est excellent pour les applications ASP.NET Core MVC, il est également polyvalent et peut être utilisé avec d'autres applications .NET pour gérer les fonctionnalités PDF.

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