Aspose.Total for C++ se skládá z výkonných rozhraní API pro automatizaci souborů, která umožňují automatizovat převod RTF na POTX při použití dvou z těchto rozhraní API. Načtěte svůj RTF 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 POTX.
Konverze RTF na POTX v C++
- Otevřete soubor RTF pomocí odkazu třídy Rtfument
- Převeďte RTF 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 POTX pomocí metody Save a nastavte Potx 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 RTF file with an instance of Rtfument
Rtfument rtfument = new Rtfument("template.rtf");
System::SharedPtr<Rtfument> rtf = System::MakeObject<Rtfument>(u"sourceFile.rtf");
// save the rtfument in HTML file format
rtf->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 Potx
pres->Save(output.potx, Aspose::Slides::Export::SaveFormat::Potx);
Zdarma online převodník RTF na POTX
Načtěte dokument RTF 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 RTF 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 rtfument, the password is passed to the rtfument's constructor using a LoadOptions object.
auto options = MakeObject<LoadOptions>(u"rtfPassword");
// load the rtfument from the local file system by filename:
SharedPtr<Rtfument> rtf = MakeObject<Rtfument>(u"Encrypted.rtf", options);
Přidejte komentáře do dokumentu POTX prostřednictvím C++
Při ukládání RTF jako POTX můžete také použít Aspose.Slides for C++ k přidání dalších funkcí do dokumentu POTX. 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 zpotxově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 Potx
pres->Save(output.potx, Aspose::Slides::Export::SaveFormat::Potx);
Často kladené otázky
- Jak mohu převést RTF na POTX Online?Online aplikaci pro převod RTF najdete výše. Chcete-li zahájit proces převodu, můžete přidat soubor RTF 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 RTF na POTX si můžete stáhnout převedený soubor jediným kliknutím.
- Jak dlouho trvá převod RTF?Rychlost tohoto online převodníku závisí do značné míry na velikosti převáděného souboru RTF. Malé soubory RTF lze převést na POTX 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 RTF na POTX pomocí bezplatného převodníku Aspose.Total?Samozřejmě! Poté, co je váš soubor RTF převeden na POTX pomocí našeho online převodníku, bude okamžitě k dispozici odkaz ke stažení souboru POTX. 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 RTF, 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 RTF?Pro online převod RTF 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 RTF Conversion API pro hladký výkon.