Comment convertir XML en PDF en utilisant C#

Convertir XML en PDF en C# et VB.NET

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

Convertissez du XML en PDF en C# en utilisant des transformations XSLT pour d'abord convertir le XML en HTML, puis en générant le HTML en PDF avec IronPDF, offrant ainsi une solution fiable pour les schémas XML complexes.

La conversion de XML directement en PDF dans C# nécessite une approche stratégique. La méthode la plus efficace consiste à utiliser XSLT comme modèle de transformation. XML se convertit en PDF via HTML(5) en utilisant des transformations XSLT. Les documents XSLT définissent la manière dont le XML d'un schéma donné est converti en une représentation HTML précise, conformément à des normes bien établies. XSLT agit comme un traducteur personnalisé de XML à HTML. Le moteur de rendu Chrome d'IronPDF garantit une conversion précise du HTML vers le PDF.

Consultez l'article " Utilisation de la classe XslCompiledTransform " de Microsoft pour en savoir plus sur la transformation XSLT.

sous-titre:2(Démarrage rapide : Convertir XML en PDF avec IronPDF)

Transformez facilement vos fichiers XML en PDF grâce à IronPDF. En quelques lignes de code, utilisez XSLT pour convertir des données XML en HTML et les générer sous forme de document PDF. IronPDF assure une intégration directe tout en préservant le formatage et en garantissant la compatibilité entre les plateformes. Ce processus utilise les fonctionnalités HTML vers PDF d'IronPDF pour créer des documents de haute qualité.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronPDF avec le gestionnaire de packages NuGet

    PM > Install-Package IronPdf

  2. Copiez et exécutez cet extrait de code.

    new IronPdf.ChromePdfRenderer()
        .RenderHtmlAsPdf(
            XslCompiledTransform.Load("template.xslt")
                .Transform(XmlReader.Create("data.xml"), new StringWriter())
                .ToString()
        )
        .SaveAs("output.pdf");
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronPDF dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer

Comment mettre en œuvre la conversion de XML en PDF en C#?

Pour mettre en œuvre la conversion XML en PDF dans C#, combinez la transformation XSLT avec la génération de PDF. Tout d'abord, créez un modèle XSLT qui définit comment les données XML doivent être formatées en HTML. Utilisez ensuite la classe XslCompiledTransform pour appliquer cette transformation aux données XML. Enfin, rendez le HTML résultant au format PDF à l'aide du ChromePdfRenderer d'IronPDF.

Le processus consiste à charger le modèle XSLT, à l'appliquer à la source de données XML et à capturer la sortie HTML. Transmettez ce HTML directement au moteur de rendu d'IronPDF, qui prend en charge toutes les complexités liées à la création d'un document PDF correctement formaté. Pour les scénarios avancés, appliquez un style CSS personnalisé afin d'améliorer la présentation visuelle du document PDF généré.

Pourquoi utiliser XSLT pour la conversion de XML en PDF?

XSLT (Extensible Stylesheet Language Transformations) est l'approche la plus souple et la plus facile à maintenir pour convertir du XML en PDF. Contrairement aux bibliothèques XML-to-PDF directes, XSLT permet de définir des règles de transformation précises qui gèrent des schémas XML complexes et des structures imbriquées. Cette approche permet de contrôler totalement l'apparence du document final tout en maintenant la séparation entre les données (XML) et la présentation (XSLT).

L'utilisation de XSLT permet d'utiliser les technologies web existantes comme HTML et CSS pour la mise en forme des fichiers PDF. Utilisez des outils et des techniques familiers plutôt que d'apprendre des langages de formatage PDF propriétaires. En outre, les modèles XSLT sont réutilisables et facilement modifiables sans changer le code C#, ce qui facilite la maintenance.

Quels sont les composants clés nécessaires ?

Les composants essentiels pour la conversion XML en PDF comprennent l'espace de noms System.Xml pour le traitement XML, la classe XslCompiledTransform pour les transformations XSLT, et IronPDF pour le rendu HTML en PDF. Installez IronPDF via NuGet pour accéder aux fonctionnalités de génération de PDF.

Le modèle XSLT sert de plan directeur pour la transformation, en définissant comment les éléments XML correspondent aux structures HTML. Le modèle doit inclure une structure HTML appropriée avec des informations de style, soit en ligne, soit par le biais de CSS. Pour les mises en page complexes, gérer les polices et manipuler les images de manière appropriée dans les transformations.

Quand devrais-je choisir cette approche plutôt que d'autres ?

L'approche de transformation XSLT excelle lorsqu'il s'agit de données XML structurées nécessitant des options de formatage flexibles. Elle convient à la génération de rapports, de factures, de catalogues ou de documents dans lesquels les données XML doivent être présentées dans des mises en page spécifiques. Cette méthode fonctionne bien lorsqu'il s'agit de prendre en charge plusieurs formats de sortie à partir de la même source XML en créant différents modèles XSLT pour différentes exigences de présentation.

Toutefois, pour les structures XML simples ou les conversions occasionnelles de documents, envisagez des solutions plus simples. Pour les conversions de base, analysez directement le XML et créez du HTML par programme. Mais pour les systèmes de production gérant divers schémas XML ou nécessitant une logique de transformation maintenable, l'approche XSLT avec IronPDF offre la solution la plus fiable.

La chaîne ou le fichier HTML résultant est rendu au format PDF à l'aide du .NET PDF Generator. Téléchargez un exemple de projet présentant les capacités d'IronPdf à convertir du XML en PDF à partir de ce Exemple de conversion de XML en PDF.

Exemple

// XSLT template that defines the transformation from XML to HTML
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
...
// XSLT template that defines the transformation from XML to HTML
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
...
$vbLabelText   $csharpLabel

Conversion avancée de XML en PDF avec options de rendu personnalisées

Les applications de production nécessitent souvent un meilleur contrôle de la sortie des PDF. IronPDF propose de nombreuses options de rendu pour personnaliser le document final. Cet exemple amélioré démontre l'application d'un formatage professionnel, d'en-têtes, de pieds de page et de paramètres de page :

// Configure advanced rendering options
var renderer = new ChromePdfRenderer();

...
// Configure advanced rendering options
var renderer = new ChromePdfRenderer();

...
$vbLabelText   $csharpLabel

Travailler avec des schémas XML complexes

Lorsqu'ils traitent des structures XML complexes, les modèles XSLT doivent gérer les éléments imbriqués, les attributs et le formatage conditionnel. Appliquez des filigranes et ajoutez des numéros de page pour renforcer le professionnalisme du document. Pensez à utiliser les paramètres XSLT pour rendre les modèles plus flexibles :

// Create XSLT argument list for dynamic parameters
XsltArgumentList args = new XsltArgumentList();
...
// Create XSLT argument list for dynamic parameters
XsltArgumentList args = new XsltArgumentList();
...
$vbLabelText   $csharpLabel

Infographie

Transformation de XML en HTML à l'aide de XSLT montrant les données du catalogue converties en format tabulaire

Questions Fréquemment Posées

Comment convertir du XML en PDF en C# ?

Pour convertir du XML en PDF en C#, utilisez des transformations XSLT pour convertir d'abord du XML en HTML, puis rendez le HTML en PDF avec IronPDF. Chargez votre modèle XSLT à l'aide de XslCompiledTransform, appliquez-le à vos données XML pour générer du HTML, puis utilisez IronPdf's ChromePdfRenderer pour créer le document PDF final.

Pourquoi devrais-je utiliser XSLT pour la conversion de XML en PDF ?

XSLT constitue l'approche la plus flexible pour la conversion de XML en PDF, car il agit comme un traducteur personnalisé de XML en HTML. Combinée au moteur de rendu Chrome d'IronPDF, cette méthode garantit une conversion parfaite au pixel près tout en conservant un contrôle total sur la façon dont vos données XML sont formatées dans le document PDF final.

Quelles sont les étapes de la conversion de XML en PDF ?

La mise en œuvre comporte 5 étapes : 1) Installer la bibliothèque C# d'IronPDF, 2) Charger votre modèle XSLT à l'aide de la méthode Load, 3) Transformer le XML en HTML à l'aide de la méthode Transform, 4) Rendre le HTML en PDF à l'aide des options de rendu personnalisées d'IronPDF, et 5) Exporter le document PDF à l'emplacement de votre choix.

Puis-je appliquer un style personnalisé à ma conversion XML en PDF ?

Oui, vous pouvez appliquer un style CSS personnalisé pour améliorer la présentation visuelle de votre fichier PDF. IronPDF prend en charge le style CSS réactif, ce qui vous permet de créer des PDF formatés de manière professionnelle à partir de vos données XML, avec un contrôle total sur les polices, les mises en page et les éléments visuels.

Est-il possible de convertir du XML en PDF en une seule ligne de code ?

Oui, IronPDF permet la conversion XML vers PDF en une seule ligne en enchaînant les méthodes : new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf(XslCompiledTransform.Load("template.xslt").Transform(XmlReader.Create("data.xml"), new StringWriter()).ToString()).SaveAs("output.pdf") ;

Quel est le moteur de rendu utilisé pour la conversion de XML en PDF ?

IronPDF utilise un moteur de rendu Chrome pour la conversion HTML en PDF, ce qui garantit un rendu parfait au pixel près et une compatibilité avec les normes web modernes. Ce moteur gère toutes les complexités liées à la création de documents PDF correctement formatés à partir de vos données XML transformées.

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
Revu par
Jeff Fritz
Jeffrey T. Fritz
Responsable principal du programme - Équipe de la communauté .NET
Jeff est également responsable principal du programme pour les équipes .NET et Visual Studio. Il est le producteur exécutif de la série de conférences virtuelles .NET Conf et anime 'Fritz and Friends', une diffusion en direct pour développeurs qui est diffusée deux fois par semaine où il parle de technologie et écrit du code avec les téléspectateurs. Jeff écrit des ateliers, des présentations et prévoit du contenu pour les plus grands événements de développement Microsoft, y compris Microsoft Build, Microsoft Ignite, .NET Conf et le sommet Microsoft MVP
Prêt à commencer?
Nuget Téléchargements 17,012,929 | Version : 2025.12 vient de sortir