Aspose.Total for C++ состоит из мощных API-интерфейсов для автоматизации файлов, которые позволяют автоматизировать преобразование RTF в PPSM при использовании двух API-интерфейсов. Загрузите свой RTF с помощью Aspose.Words for C++ и преобразуйте его в HTML, затем загрузите HTML с помощью C++ API для обработки PowerPoint Aspose.Slides for C++ , чтобы создать новую презентацию и сохранить ее как PPSM.
Преобразование RTF в PPSM на C++
- Откройте файл RTF, используя ссылку на класс Rtfument .
- Преобразуйте RTF в HTML с помощью функции-члена Save .
- Инициализируйте новый объект Презентация
- Добавьте AutoShape на слайд и добавьте в него AddTextFrame.
- Загрузите содержимое HTML и запишите его в файл презентации.
- Сохраните документ в формате PPSM с помощью метода Save и установите Ppsm как SaveFormat.
Требования к конвертации
Установите из командной строки как nuget install Aspose.Total.Cpp
или через консоль диспетчера пакетов Visual Studio с помощью Install-Package Aspose.Total.Cpp
.
Кроме того, вы можете получить автономный установщик MSI или библиотеки DLL в ZIP-файле из загрузки .
// 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 Ppsm
pres->Save(output.ppsm, Aspose::Slides::Export::SaveFormat::Ppsm);
Бесплатный онлайн-конвертер RTF в PPSM
Загрузить защищенный паролем документ RTF через C++
Помимо преобразования документов, Aspose.Words for C++ API позволяет разработчикам C++ использовать множество функций для работы с документами. Если ваш формат файла Microsoft Word RTF защищен паролем, вы все равно можете открыть его с помощью API. Чтобы загрузить зашифрованный документ, вы можете использовать специальную перегрузку конструктора, которая принимает объект LoadOptions . Этот объект содержит свойство Password, которое определяет строку пароля.
// 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);
Добавить комментарии в документ PPSM через C++
При сохранении RTF в формате PPSM вы также можете использовать Aspose.Slides for C++ , чтобы добавить дополнительные функции в документ PPSM. Например, вы можете добавлять комментарии в свою презентацию. Комментарии к слайдам презентации связаны с конкретным автором. Класс Presentation содержит коллекцию авторов в ICommentAuthorCollection, которые отвечают за добавление комментариев к слайдам. Для каждого автора в 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 Ppsm
pres->Save(output.ppsm, Aspose::Slides::Export::SaveFormat::Ppsm);
Часто задаваемые вопросы
- Как я могу конвертировать RTF в PPSM онлайн?Вы можете найти онлайн-приложение для преобразования RTF выше. Чтобы начать процесс преобразования, вы можете добавить файл RTF, перетащив его или щелкнув внутри белой области, чтобы импортировать документ. После того, как вы добавили файл, вы можете просто нажать кнопку «Конвертировать». После завершения преобразования RTF в PPSM вы можете загрузить преобразованный файл одним щелчком мыши.
- Сколько времени занимает конвертация RTF?Скорость этого онлайн-конвертера во многом зависит от размера конвертируемого RTF-файла. Небольшие файлы RTF можно преобразовать в PPSM всего за несколько секунд. Если вы используете код преобразования в приложении C++, скорость преобразования будет зависеть от того, насколько хорошо вы оптимизировали свое приложение.
- Безопасно ли конвертировать RTF в PPSM с помощью бесплатного конвертера Aspose.Total?Конечно! После того, как ваш файл RTF будет преобразован в PPSM с помощью нашего онлайн-конвертера, ссылка для скачивания файла PPSM будет немедленно доступна. Мы серьезно относимся к безопасности и конфиденциальности загруженных вами файлов и удаляем их через 24 часа после завершения процесса преобразования. Будьте уверены, никто не получит доступ к вашим файлам. Наш процесс преобразования, включая преобразование RTF, полностью безопасен. Мы предоставляем бесплатное приложение для целей тестирования, чтобы вы могли проверить результаты перед интеграцией кода.
- Какой браузер я должен использовать для преобразования RTF?Для онлайн-конвертации RTF вы можете использовать любой современный браузер, такой как Google Chrome, Firefox, Opera или Safari. Однако, если вы разрабатываете настольное приложение, рекомендуется использовать Aspose.Total RTF Conversion API для бесперебойной работы.