Per trasformare XML in file PDF, useremo l’API Aspose.PDF for .NET che è un’API di manipolazione dei documenti ricca di funzionalità, potente e facile da usare per la piattaforma net. Apri il gestore pacchetti NuGet, cerca Aspose.pdf e installa. È inoltre possibile utilizzare il seguente comando dalla console di Gestione pacchetti.
PM > Install-Package Aspose.PDF
Trasforma XML e caricalo in PDF tramite C#
È necessario Aspose.PDF for .NET per provare il codice nel proprio ambiente.
- Imposta i parametri della pagina.
- Carica il file XSLT.
- Quindi carica e trasforma.
Trasforma XML in PDF - C#
var xsltFile = Path.Combine(dataDir, "XSLTFile1.xslt");
var xmlDataFile = Path.Combine(dataDir, "data_xml.pdf");
var outputFile = Path.Combine(dataDir, "data_xml.pdf");
var XmlContent = File.ReadAllText(xmlDataFile);
var XsltContent = File.ReadAllText(xsltFile);
var options = new Aspose.Pdf.HtmlLoadOptions();
options.PageInfo.Height = 595;
options.PageInfo.Width = 420;
var pdfDocument = new Aspose.Pdf.Document(TransformXmltoHtml(XmlContent, XsltContent), options);
pdfDocument.Save(outputFile);
static MemoryStream TransformXmltoHtml(string inputXml, string xsltString)
{
var transform = new System.Xml.Xsl.XslCompiledTransform();
using (var reader = System.Xml.XmlReader.Create(new StringReader(xsltString)))
{
transform.Load(reader);
}
var memoryStream = new MemoryStream();
var results = new StreamWriter(memoryStream);
using (var reader = System.Xml.XmlReader.Create(new StringReader(inputXml)))
{
transform.Transform(reader, null, results);
}
memoryStream.Position = 0;
return memoryStream;
}