Você é um desenvolvedor C++ que deseja adicionar para integrar o recurso de conversão XML para ODP dentro de seus aplicativos C++? Você pode fazer isso em duas etapas simples. Você pode exportar XML para PPTX usando Aspose.PDF for C++ . Em segundo lugar, usando Aspose.Slides for C++ , você pode converter PPTX para ODP. Ambas as APIs estão no pacote Aspose.Total for C++ .
API C++ para exportar XML para ODP
- Abra o arquivo XML usando a referência de classe Document
- Converta XML para PPTX usando a função do método Save
- Carregue o documento PPTX usando a referência de classe Apresentação
- Salve o documento no formato ODP usando a função de membro Save e defina “Odp” como SaveFormat
Requisitos de conversão
Instale a partir da linha de comando como nuget install Aspose.Total.Cpp
ou via Package Manager Console do Visual Studio com Install-Package Aspose.Total.Cpp
.
Como alternativa, obtenha o instalador MSI offline ou as DLLs em um arquivo ZIP em downloads .
// load XML file with an instance of Document class
auto doc = MakeObject<Document>(u"template.xml");
// save XML as PPTX format
doc->Save(u"PptxOutput.pptx", SaveFormat::Pptx);
// instantiate a Presentation object that represents a PPTX file
SharedPtr<Presentation> prs = MakeObject<Presentation>(u"PptxOutput.pptx");
// save the presentation as Odp format
prs->Save(u"output.odp", Aspose::Slides::Export::SaveFormat::Odp);
Alterar senha do documento XML via C++
No processo de renderização de XML para ODP, você pode abrir um XML protegido por senha e também alterar sua senha. Para alterar a senha de um arquivo XML, você deve saber a senha do proprietário desse documento. Você pode carregar um documento PDF protegido por senha com Aspose.PDF for C++ especificando sua senha de proprietário e usando o método ChangePasswords para alterar a senha.
// load an existing XML Document
auto doc = MakeObject<Document>(L"input.xml", L"owner");
// change password of XML Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");
Adicionar imagens da Web no arquivo ODP via C++
Depois de converter XML para ODP, você também pode adicionar imagens da web ao seu documento de saída. Aspose.Slides for C++ suporta operações com imagens nestes formatos populares: JPEG, PNG, BMP, GIF e outros. Você pode adicionar uma ou várias imagens em seu computador em um slide em uma apresentação. Este código de exemplo em C++ mostra como adicionar uma imagem a um arquivo ODP
// instantiate a Presentation object that represents a ODP file
auto pres = System::MakeObject<Presentation>("output.odp");
// get slide
auto slide = pres->get_Slides()->idx_get(0);
// initialize Web Client
auto webClient = System::MakeObject<WebClient>();
// get image data
auto imageData = webClient->DownloadData(System::MakeObject<Uri>(u"[REPLACE WITH URL]"));
// add image
auto image = pres->get_Images()->AddImage(imageData);
// add picture frame
slide->get_Shapes()->AddPictureFrame(ShapeType::Rectangle, 10.0f, 10.0f, 100.0f, 100.0f, image);
// save updated file
pres->Save(u"updated.odp", SaveFormat::Odp);