Чтобы преобразовать XML в PDF, мы будем использовать Aspose.PDF для C++ API, который представляет собой многофункциональный, мощный и простой в использовании API для работы с документами для платформы cpp. Откройте менеджер пакетов NuGet, найдите Aspose.pdf и установите. Вы также можете использовать следующую команду из консоли Package Manager.
    
    
PM > Install-Package Aspose.PDF.Cpp
     
 
    
Преобразование XML и загрузка в PDF через C++
Вам понадобится Aspose.PDF для C++, чтобы попробовать код в своей среде.
            
- Задайте параметры страницы.
- Загрузите файл XSLT.
- Затем загрузите и преобразуйте.
     
 
    
      Преобразование XML в PDF - C++
      
        
        
    void WorkingWithXML::ExampleXSLTtoPDF()
    {
    String _dataDir("C:\\Samples\\");
    auto XmlContent = System::IO::File::ReadAllText(u"XMLFile1.xml");
    auto XsltContent = System::IO::File::ReadAllText(u"XSLTFile1.xslt");
    auto options = MakeObject<Aspose::Pdf::HtmlLoadOptions>();
    // set page size to A5
    options->get_PageInfo()->set_Height(595);
    options->get_PageInfo()->set_Width(420);
    auto pdfDocument = MakeObject<Aspose::Pdf::Document>(TransformXmltoHtml(XmlContent, XsltContent), options);
    pdfDocument->Save(_dataDir + u"data_xml.pdf");
    }
    System::SharedPtr<System::IO::MemoryStream> TransformXmltoHtml(String inputXml, String xsltString)
    {
    auto transform = MakeObject<System::Xml::Xsl::XslCompiledTransform>();
    auto reader = System::Xml::XmlReader::Create(MakeObject<System::IO::StringReader>(xsltString));
    transform->Load(reader);
    auto memoryStream = MakeObject<System::IO::MemoryStream>();
    auto results = System::Xml::XmlWriter::Create(memoryStream);
    auto reader2 = System::Xml::XmlReader::Create(MakeObject<System::IO::StringReader>(inputXml));
    transform->Transform(reader2,nullptr,results);
    memoryStream->set_Position (0);
    return memoryStream;
    }