C++ API to Convert DOCM to PPTX or Online App
Export DOCM to PPTX within your C++ applications without using Microsoft Word® or PowerPoint
Why to Convert
Converting a document from one format to another is a common requirement for many businesses. For example, a DOCM file may need to be converted to a PPTX file for presentation purposes. This conversion process can be time consuming and tedious if done manually.How Aspose.Total helps for docm to pptx conversion
Aspose.Total for C++ is a powerful file automation API that allows users to automate the conversion of DOCM to PPTX files. This is done by using two of its APIs, Aspose.Words for C++ and Aspose.Slides for C++. The process involves loading the DOCM file using Aspose.Words for C++ and converting it to HTML. The HTML is then loaded via the PowerPoint manipulation C++ API, Aspose.Slides for C++, to create a new presentation and save it as a PPTX file. This process is quick and efficient, and can be used to automate the conversion of DOCM to PPTX files.DOCM to PPTX Conversion on C++
- Open DOCM file using Document class reference
- Convert DOCM to HTML by using Save member function
- Initialize a new Presentation object
- Add an AutoShape in your slide, and add AddTextFrame in it
- Load the HTML content and write it in your Presentation file
- Save the document to PPTX format using Save method and set Pptx as SaveFormat
Get Started with C++ File Format 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 DOCM file with an instance of Document
Document document = new Document("template.docm");
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"sourceFile.docm");
// save the document in HTML file format
doc->Save(u"HtmlOutput.HTML");
// load the desired the presentation
SharedPtr<Presentation> pres = MakeObject<Presentation>();
// access first slide
SharedPtr<ISlide> sld = pres->get_Slides()->idx_get(0);
// add an AutoShape of Rectangle type
SharedPtr<IAutoShape> ashp = sld->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 10, 10, 700, 500);
// reset default fill color
ashp->get_FillFormat()->set_FillType(FillType::NoFill);
// add TextFrame to the Rectangle
ashp->AddTextFrame(u" ");
// access the text frame
SharedPtr<ITextFrame> txtFrame = ashp->get_TextFrame();
// get Paragraphs collection
SharedPtr<Aspose::Slides::IParagraphCollection>ParaCollection = txtFrame->get_Paragraphs();
// clear all paragraphs in added text frame
ParaCollection->Clear();
// load the HTML file using stream reader
SharedPtr<System::IO::StreamReader> tr = MakeObject<System::IO::StreamReader>(HtmlOutput.HTML);
// add text from HTML stream reader in text frame
ParaCollection->AddFromHtml(tr->ReadToEnd());
// save presentation as Pptx
pres->Save(output.pptx, Aspose::Slides::Export::SaveFormat::Pptx);
Free Online Converter for DOCM to PPTX
Load Password Protected DOCM Document via C++
Apart from document conversion, Aspose.Words for C++ API allows tons of document manipulation features for C++ developers. In case your Microsoft Word DOCM file format is password protected, you can still open it using the API. In order to load the encrypted document, you can use a special constructor overload, which accepts a LoadOptions object. This object contains the Password property, which specifies the password string.
// when loading password protected document, the password is passed to the document's constructor using a LoadOptions object.
auto options = MakeObject<LoadOptions>(u"docPassword");
// load the document from the local file system by filename:
SharedPtr<Document> doc = MakeObject<Document>(u"Encrypted.docm", options);
Add Comments in PPTX Document via C++
While saving DOCM as PPTX, you can also use Aspose.Slides for C++ to add further features in your PPTX document. For instance, you can add comments in your presentation. The presentation slide comment are associated with a particular author. The Presentation class holds the collection of authors in ICommentAuthorCollection that are responsible for adding slide comments. For each author, there is a collection of comments in ICommentCollection.
// instantiate Presentation class
SharedPtr<Presentation>pres = MakeObject<Presentation>();
// access first slide
SharedPtr<ILayoutSlide>layout = pres->get_LayoutSlides()->idx_get(0);
// add empty slide
pres->get_Slides()->AddEmptySlide(layout);
// adding Author
SharedPtr<ICommentAuthor> author = pres->get_CommentAuthors()->AddAuthor(u"John Doe", u"MF");
// set position of comments
System::Drawing::PointF point = System::Drawing::PointF(0.2f, 0.2f);
// add slide comment for an author on slide 1
author->get_Comments()->AddComment(u"Hello John, this is a slide comment", pres->get_Slides()->idx_get(1), point, DateTime::get_Now());
// access ISlide 1
SharedPtr<ISlide> slide = pres->get_Slides()->idx_get(0);
// save presentation as Pptx
pres->Save(output.pptx, Aspose::Slides::Export::SaveFormat::Pptx);
FAQ
- How can I convert DOCM to PPTX Online?You can find the online app for DOCM conversion above. To start the conversion process, you can add the DOCM file either by dragging and dropping it or by clicking inside the white area to import the document. Once you have added the file, you can simply click the "Convert" button. After the DOCM to PPTX conversion is completed, you can download your converted file with just one click.
- How long does it take to convert DOCM?The speed of this online converter depends largely on the size of the DOCM file being converted. Small DOCM files can be converted to PPTX in just a few seconds. If you are using the conversion code within a C++ application, the conversion speed will depend on how well you have optimized your application.
- Is it safe to convert DOCM to PPTX using free Aspose.Total converter?Of course! After your DOCM file is converted to PPTX using our online converter, the download link for the PPTX file will be immediately available. We take the security and privacy of your uploaded files seriously and delete them 24 hours after the conversion process is complete. Rest assured, no one will have access to your files. Our conversion process, including DOCM conversion, is completely safe. We provide a free app for testing purposes so that you can verify the results before integrating the code.
- What browser should I use to convert DOCM?For online DOCM conversion, you can use any modern browser, such as Google Chrome, Firefox, Opera, or Safari. However, if you're developing a desktop application, Aspose.Total DOCM Conversion API is recommended for smooth performance.