Why to Convert CGM to PPT?
CGM (Computer Graphics Metafile) is a vector graphics format used for storing and exchanging graphics data. It is widely used in the engineering and technical drawing fields. On the other hand, PPT (PowerPoint) is a popular presentation format used for creating and sharing presentations. It is widely used in the corporate world for creating presentations. Therefore, if you are a C++ developer and want to add a feature to your application that can convert CGM to PPT, then you need to use a reliable API.
How Aspose.Total helps for CGM to PPT Conversion?
Aspose.Total for C++ is a comprehensive suite of APIs that can be used for creating, manipulating and converting various file formats. It includes APIs for PDF, Slides, Words, Cells, Barcode, Imaging, Email, OCR, and many more. It also includes two APIs that can be used for converting CGM to PPT. The first API is Aspose.PDF for C++, which can be used to export CGM to PPTX. The second API is Aspose.Slides for C++, which can be used to convert PPTX to PPT. Both APIs come under the Aspose.Total for C++ package.
Therefore, if you are a C++ developer and want to add a feature to your application that can convert CGM to PPT, then you can do it in two simple steps. First, you can export CGM to PPTX by using Aspose.PDF for C++. Secondly, you can convert PPTX to PPT by using Aspose.Slides for C++. Both APIs come under the Aspose.Total for C++ package. This makes it easier for developers to integrate CGM to PPT conversion feature inside their C++ applications.
C++ API to Export CGM to PPT
- Open CGM file using Document class reference
- Convert CGM to PPTX by using Save method function
- Load PPTX document by using Presentation class reference
- Save the document to PPT format using
Save
member function and set
Ppt
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 CGM file with an instance of Document class
auto doc = MakeObject<Document>(u"template.cgm");
// save CGM 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 Ppt format
prs->Save(u"output.ppt", Aspose::Slides::Export::SaveFormat::Ppt);
Change Password of CGM Document via C++
In the process of rendering CGM to PPT, you can open a password protected CGM and also change its password. In order to change the password of a CGM 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 CGM Document
auto doc = MakeObject<Document>(L"input.cgm", L"owner");
// change password of CGM Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");
Add Images From Web in PPT File via C++
After converting CGM to PPT, 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 PPT file
// instantiate a Presentation object that represents a PPT file
auto pres = System::MakeObject<Presentation>("output.ppt");
// 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.ppt", SaveFormat::Ppt);