Aspose.Total for C++ se skládá z výkonných rozhraní API pro automatizaci souborů, která umožňují automatizovat převod DOCM na POTM při použití dvou z těchto rozhraní API. Načtěte svůj DOCM pomocí Aspose.Words for C++ a převeďte jej do HTML, poté načtěte HTML pomocí manipulačního C++ API PowerPointu Aspose.Slides for C++ , vytvořte novou prezentaci a uložte ji jako POTM.
Konverze DOCM na POTM v C++
- Otevřete soubor DOCM pomocí odkazu třídy Document
- Převeďte DOCM do HTML pomocí členské funkce Save
- Inicializujte nový objekt Presentation
- Přidejte na snímek automatický tvar a přidejte do něj AddTextFrame
- Načtěte obsah HTML a zapište jej do souboru prezentace
- Uložte dokument do formátu POTM pomocí metody Save a nastavte Potm jako SaveFormat
Požadavky na převod
Instalujte z příkazového řádku jako nuget install Aspose.Total.Cpp
nebo přes konzolu Správce balíčků sady Visual Studio s Install-Package Aspose.Total.Cpp
.
Případně si můžete stáhnout offline instalační program MSI nebo knihovny DLL v souboru ZIP z stažení .
// load DOCM file with an instance of Document
Document docmument = new Document("template.docm");
System::SharedPtr<Document> docm = System::MakeObject<Document>(u"sourceFile.docm");
// save the docmument in HTML file format
docm->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 Potm
pres->Save(output.potm, Aspose::Slides::Export::SaveFormat::Potm);
Zdarma online převodník DOCM na POTM
Načtěte dokument DOCM chráněný heslem přes C++
Kromě převodu dokumentů umožňuje Aspose.Words for C++ API spoustu funkcí pro manipulaci s dokumenty pro vývojáře C++. V případě, že je váš formát souboru Microsoft Word DOCM chráněn heslem, můžete jej stále otevřít pomocí rozhraní API. K načtení zašifrovaného dokumentu můžete použít speciální přetížení konstruktoru, který přijímá objekt LoadOptions . Tento objekt obsahuje vlastnost Password, která určuje řetězec hesla.
// when loading password protected docmument, the password is passed to the docmument's constructor using a LoadOptions object.
auto options = MakeObject<LoadOptions>(u"docmPassword");
// load the docmument from the local file system by filename:
SharedPtr<Document> docm = MakeObject<Document>(u"Encrypted.docm", options);
Přidejte komentáře do dokumentu POTM prostřednictvím C++
Při ukládání DOCM jako POTM můžete také použít Aspose.Slides for C++ k přidání dalších funkcí do dokumentu POTM. Do prezentace můžete například přidávat komentáře. Komentář ke snímku prezentace je spojen s konkrétním autorem. Třída Presentation obsahuje kolekci autorů v ICommentAuthorCollection, kteří jsou zpotmovědní za přidávání komentářů ke snímkům. Pro každého autora je v ICommentCollection sbírka komentářů.
// 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 Potm
pres->Save(output.potm, Aspose::Slides::Export::SaveFormat::Potm);
Často kladené otázky
- Jak mohu převést DOCM na POTM Online?Online aplikaci pro převod DOCM najdete výše. Chcete-li zahájit proces převodu, můžete přidat soubor DOCM buď přetažením, nebo kliknutím do bílé oblasti pro import dokumentu. Po přidání souboru můžete jednoduše kliknout na tlačítko "Převést". Po dokončení převodu DOCM na POTM si můžete stáhnout převedený soubor jediným kliknutím.
- Jak dlouho trvá převod DOCM?Rychlost tohoto online převodníku závisí do značné míry na velikosti převáděného souboru DOCM. Malé soubory DOCM lze převést na POTM během několika sekund. Pokud používáte převodní kód v rámci aplikace C++, bude rychlost převodu záviset na tom, jak dobře jste aplikaci optimalizovali.
- Je bezpečné převádět DOCM na POTM pomocí bezplatného převodníku Aspose.Total?Samozřejmě! Poté, co je váš soubor DOCM převeden na POTM pomocí našeho online převodníku, bude okamžitě k dispozici odkaz ke stažení souboru POTM. Bezpečnost a soukromí vašich nahraných souborů bereme vážně a mažeme je 24 hodin po dokončení procesu převodu. Ujišťujeme vás, že k vašim souborům nebude mít nikdo přístup. Náš proces převodu, včetně převodu DOCM, je zcela bezpečný. Poskytujeme bezplatnou aplikaci pro testovací účely, abyste si mohli ověřit výsledky před integrací kódu.
- Jaký prohlížeč mám použít k převodu DOCM?Pro online převod DOCM můžete použít jakýkoli moderní prohlížeč, jako je Google Chrome, Firefox, Opera nebo Safari. Pokud však vyvíjíte desktopovou aplikaci, doporučujeme Aspose.Total DOCM Conversion API pro hladký výkon.