XML’yi C++ aracılığıyla dönüştürür

XML’i PDF belgesine dönüştürün ve yükleyin. PDF belgelerini programlı olarak değiştirmek için C++ için Aspose.PDF öğesini kullanın

C++ Kütüphane ile XML Nasıl Dönüştürülür

XML’i PDF’ye dönüştürmek için cpp platformu için zengin özelliklere sahip, güçlü ve kullanımı kolay bir belge işleme API’si olan Aspose.PDF for C++ API’sini kullanacağız. NuGet paket yöneticisini açın, Aspose.PDF öğesini arayın ve yükleyin. Paket Yöneticisi Konsolu’ndan aşağıdaki komutu da kullanabilirsiniz.

Package Manager Console

PM > Install-Package Aspose.PDF.Cpp

XML’i dönüştürün ve C++ aracılığıyla PDF’ye yükleyin


Ortamınızdaki kodu denemek için C++ için Aspose.PDF gerekir.

  1. Sayfa parametrelerini ayarlayın.
  2. XSLT dosyasını yükleyin.
  3. Sonra Yükle ve Dönüştür.

XML'i PDF'ye dönüştürme - C++

Bu örnek kod, XML'in PDF Dosyasına nasıl dönüştürüleceğini gösterir.


    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;
    }