Are you a C++ developer looking to add the ability to convert SVG to XAML inside your C++ applications? You can do it in two simple steps with the help of Aspose.Total for C++. Aspose.Total for C++ is a suite of APIs that provides developers with the tools they need to create, manipulate, and convert a variety of file formats.
The first step is to export SVG to PPTX using Aspose.PDF for C++. Aspose.PDF for C++ is a powerful API that enables developers to create, edit, and convert PDF documents. It also provides the ability to export SVG files to PPTX format.
The second step is to convert PPTX to XAML using Aspose.Slides for C++. Aspose.Slides for C++ is a powerful API that enables developers to create, edit, and convert presentations. It also provides the ability to convert PPTX files to XAML format.
Both Aspose.PDF for C++ and Aspose.Slides for C++ are included in the Aspose.Total for C++ package. Aspose.Total for C++ is a comprehensive suite of APIs that provides developers with the tools they need to create, manipulate, and convert a variety of file formats. With Aspose.Total for C++, you can easily add the ability to convert SVG to XAML inside your C++ applications.
C++ API to Export SVG to XAML
- Open SVG file using Document class reference
- Convert SVG to PPTX by using Save method function
- Load PPTX document by using Presentation class reference
- Save the document to XAML format using
Save
member function and set
Xaml
as SaveFormat
Get Started with C++ File Automation APIs
Install from command line as nuget install Aspose.Total.Cpp
or via Package Manager Console of Visual Studio with Install-Package Aspose.Total.Cpp
.
Alternatively, get the offline MSI installer or DLLs in a ZIP file from downloads .
// load SVG file with an instance of Document class
auto doc = MakeObject<Document>(u"template.svg");
// save SVG 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 Xaml format
prs->Save(u"output.xaml", Aspose::Slides::Export::SaveFormat::Xaml);
Change Password of SVG Document via C++
In the process of rendering SVG to XAML, you can open a password protected SVG and also change its password. In order to change the password of a SVG file, you must know the owner password of that document. You can load password protected PDF document with Aspose.PDF for C++ by specifying its owner password and use ChangePasswords method to change the password.
// load an existing SVG Document
auto doc = MakeObject<Document>(L"input.svg", L"owner");
// change password of SVG Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");
Add Images From Web in XAML File via C++
After converting SVG to XAML, you can also add images from web to your output document. Aspose.Slides for C++ supports operations with images in these popular formats: JPEG, PNG, BMP, GIF, and others. You can add one or several images on your computer onto a slide in a presentation. This sample code in C++ shows you how to add an image to a XAML file
// instantiate a Presentation object that represents a XAML file
auto pres = System::MakeObject<Presentation>("output.xaml");
// 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.xaml", SaveFormat::Xaml);