Transformer le XML via C#

Transformez et chargez du XML dans un document PDF. Utilisez Aspose.PDF pour .NET afin de modifier des documents PDF par programmation

Comment transformer du XML avec la bibliothèque .NET

Afin de transformer le XML en fichier PDF, nous utiliserons l’API Aspose.PDF for .NET qui est une API de manipulation de documents riche en fonctionnalités, puissante et facile à utiliser pour la plate-forme net. Ouvrez le gestionnaire de packages NuGet, recherchez Aspose.pdf et installez. Vous pouvez également utiliser la commande suivante depuis la console du gestionnaire de packages.

Package Manager Console

PM > Install-Package Aspose.PDF

Transformez le XML et chargez-le en PDF via C#


Vous devez Aspose.PDF for .NET pour essayer le code dans votre environnement.

  1. Définissez les paramètres de page.
  2. Téléchargez le fichier XSLT.
  3. Puis Chargez et transformez.

Transformez le XML en PDF - C#

Cet exemple de code montre comment transformer un fichier XML en fichier PDF


    private static void ExampleXSLTtoPDF()
    {
        var _dataDir = @"C:\tmp\";
        var XmlContent = File.ReadAllText(@"XMLFile1.xml");
        var XsltContent = File.ReadAllText(@"XSLTFile1.xslt");
        var options = new Aspose.Pdf.HtmlLoadOptions();
        // set page size to A5
        options.PageInfo.Height = 595;
        options.PageInfo.Width = 420;
        var pdfDocument = new Aspose.Pdf.Document(TransformXmltoHtml(XmlContent, XsltContent), options);
        pdfDocument.Save(_dataDir + "data_xml.pdf");
    }

    public static MemoryStream TransformXmltoHtml(string inputXml, string xsltString)
    {
    var transform = new XslCompiledTransform();
    using (var reader = XmlReader.Create(new StringReader(xsltString)))
    {
        transform.Load(reader);
    }
    var memoryStream = new MemoryStream();
    var results = new StreamWriter(memoryStream);
    using (var reader = XmlReader.Create(new StringReader(inputXml)))
    {
        transform.Transform(reader, null, results);
    }
    memoryStream.Position = 0;
    return memoryStream;
    }