Render PS to POTM within C++ Applications

Convert PS to POTM within your C++ Applications without using Microsoft® PowerPoint

PS Conversion via C# .NET PS Conversion via Java PS Conversion in Android Apps

 

Why to Convert PS to POTM?

If you are a C++ developer, you may need to integrate the feature of PS to POTM conversion inside your C++ applications. PS (PostScript) is a page description language used for printing documents, while POTM (PowerPoint Open XML Macro-Enabled Presentation) is a file format used to save presentations in Microsoft PowerPoint. Converting PS to POTM can help you to create presentations with macros and other features that are not available in PS.

How Aspose.Total Helps for PS to POTM Conversion?

Aspose.Total for C++ is a suite of APIs that can help you to convert PS to POTM in two simple steps. First, you can use Aspose.PDF for C++ to export PS to PPTX. Aspose.PDF for C++ is a powerful PDF manipulation API that can help you to convert PDF documents to other file formats, including PPTX. Secondly, you can use Aspose.Slides for C++ to convert PPTX to POTM. Aspose.Slides for C++ is a powerful presentation manipulation API that can help you to convert presentations to other file formats, including POTM. Both APIs come under the Aspose.Total for C++ package, which is a comprehensive suite of APIs that can help you to manipulate documents, presentations, and images.

C++ API to Export PS to POTM

  1. Open PS file using Document class reference
  2. Convert PS to PPTX by using Save method function
  3. Load PPTX document by using Presentation class reference
  4. Save the document to POTM format using Save member function and set Potm 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 PS file with an instance of Document class
auto doc = MakeObject<Document>(u"template.ps");
// save PS 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 Potm format
prs->Save(u"output.potm", Aspose::Slides::Export::SaveFormat::Potm);  

Change Password of PS Document via C++

In the process of rendering PS to POTM, you can open a password protected PS and also change its password. In order to change the password of a PS 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 PS Document
auto doc = MakeObject<Document>(L"input.ps", L"owner");
// change password of PS Document
doc->ChangePasswords(L"owner", L"newuser", L"newuser");
// save the document
doc->Save(L"output.Doc");

Add Images From Web in POTM File via C++

After converting PS to POTM, 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 POTM file

// instantiate a Presentation object that represents a POTM file
auto pres = System::MakeObject<Presentation>("output.potm");
// 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.potm", SaveFormat::Potm);

Explore PS Conversion Options with C++

Convert PS to CSV (Comma Seperated Values)
Convert PS to DIF (Data Interchange Format)
Convert PS to EXCEL (Spreadsheet File Formats)
Convert PS to FODS (OpenDocument Flat XML Spreadsheet)
Convert PS to MD (Markdown Language)
Convert PS to ODP (OpenDocument Presentation Format)
Convert PS to ODS (OpenDocument Spreadsheet)
Convert PS to OTP (OpenDocument Standard Format)
Convert PS to POT (Microsoft PowerPoint Template Files)
Convert PS to POTX (Microsoft PowerPoint Template Presentation)
Convert PS to POWERPOINT (Presentation Files)
Convert PS to PPS (PowerPoint Slide Show)
Convert PS to PPSM (Macro-enabled Slide Show)
Convert PS to PPSX (PowerPoint Slide Show)
Convert PS to PPT (PowerPoint Presentation)
Convert PS to PPTM (Macro-enabled Presentation File)
Convert PS to SWF (Shockwave Flash Movie)
Convert PS to SXC (StarOffice Calc Spreadsheet)
Convert PS to TSV (Tab-separated Values)
Convert PS to TXT (Text Document)
Convert PS to XAML (XAML File)
Convert PS to XLAM (Excel Macro-Enabled Add-In)
Convert PS to XLSB (Excel Binary Workbook)
Convert PS to XLSM (Macro-enabled Spreadsheet)
Convert PS to XLT (Excel 97 - 2003 Template)
Convert PS to XLTM (Excel Macro-Enabled Template)
Convert PS to XLTX (Excel Template)
Convert PS to DOCM (Microsoft Word 2007 Marco File)
Convert PS to DOT (Microsoft Word Template Files)
Convert PS to DOTM (Microsoft Word 2007+ Template File)
Convert PS to DOTX (Microsoft Word Template File)
Convert PS to FLATOPC (Microsoft Word 2003 WordprocessingML)
Convert PS to GIF (Graphical Interchange Format)
Convert PS to MARKDOWN (Lightweight Markup Language)
Convert PS to ODT (OpenDocument Text File Format)
Convert PS to OTT (OpenDocument Template)
Convert PS to PCL (Printer Command Language)
Convert PS to RTF (Rich Text Format)
Convert PS to WORDML (Microsoft Word 2003 WordprocessingML)