1. Продукти
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for C++

Aspose.Slides FOSS for C++

Създавайте, четете и редактирайте PowerPoint презентации от C++ — безплатно и с отворен код, без необходимост от Office.

Библиотека с отворен код C++ за презентации на PowerPoint

Aspose.Slides FOSS за C++ е библиотека с лиценз MIT за работа с PowerPoint .pptx файлове. Интегрирайте я чрез CMake FetchContent и веднага започнете да създавате, четете и редактирате презентации, без да инсталирате Microsoft Office или какъвто и да е собственически runtime.

Библиотеката излага Presentation API, изградена около Presentation, Slide, ShapeCollection, TextFrame, Paragraph и Portion, концептуалния модел, използван от самия PowerPoint. Добавяйте и премахвайте слайдове, вмъквайте AutoShapes, Tables и Connectors, форматирайте текста на ниво символ с удебеляване, курсив, размер и цвят на шрифта, прилагайте плътни или градиентни запълнения и добавяйте визуални ефекти (сенка, светлина, размазване, отражение).

RAII семантиката осигурява надеждно почистване на ресурсите: деструкторът на Presentation освобождава цялото вътрешно състояние автоматично. Неизвестните XML части, срещнати по време на зареждане, се запазват дословно при запазване, така че round-tripping никога не унищожава съдържание, което библиотеката все още не разбира. Библиотеката изисква компилатор, съвместим с C++20. За допълнителни функции, вижте Aspose.Slides for C++ enterprise edition.

Презентация и API за слайдове

  • ** Създаване и отваряне на PPTX:** Създайте нови презентации или отворите съществуващи файлове .pptx чрез Presentation() или Presentation(path).
  • ** Добавяне и премахване на слайдове:** Програматично управлявайте SlideCollection с add_empty_slide(), remove() и remove_at().
  • Автоформите: Вмъкнете правоъгълници, елипси, линии и други ShapeType геометрии чрез add_auto_shape().
  • Таблици и връзки: Добавяне на структурирани форми за таблица и линии между формите чрез add_connector().
  • Записване на говорителя: Четете и пишете за всеки слайд от словото чрез NotesSlideManager.
  • Коментари за нишки: Достъп до коментари, като итерации pres.comment_authors() и техните свързани коментара.

Къде Aspose.Slides FOSS може да се използва

  • Създаване на доклад: Създайте маркирани слайд-декове от източници на данни без Office.
  • Автоматизация на шаблоните: Запълнете PPTX шаблони с динамично съдържание в тръбопроводите CI/CD.
  • Миграция на съдържание: Прочетете съществуващи презентации и преструктурирайте или промените стила на слайдовете.
  • ** Вградени системи:** Обработване на PPTX файлове в критично-производителни или ограничени с ресурси среди.
  • Барчево обработване: Прилагане на еднакви промени във форматирането в големи библиотеки с диаграми.

Форматиране на текста и визуални ефекти

  • ** Форматиране на ниво символи:** Прилагане на дебела, курсивна и цветна форма към отделни Portion обекти чрез PortionFormat.
  • Слидък и градиентен пълнене: Настрои формата на плътенето в твърд цвят или многостапен линеен градиент, като използваш FillFormat и FillType.
  • Ефекти на сянката и блясъка: Прилагайте външна слънчева сенка, блестящо оцветяване, замъгление и отражение върху всяка форма чрез EffectFormat.
  • Съчетаване на параграфи: Настрои ляво, в центъра, дясно или обоснови съставянето по параграф с помощта на ParagraphFormat и set_alignment().
  • Бронен сейф: Неизвестни XML части се запазват буквално при повторното записване.

Опит на разработчика

Aspose.Slides FOSS се интегрира чрез CMake FetchContent, така че не е необходимо ръчно изтегляне или инсталиране в цялата система. Библиотеката изгражда от източника заедно с вашия проект.

API отразява собствения модел на обекта на PowerPoint (Presentation, Slide , ShapeCollection, TextFrame), Paragraph и Portion) така че всеки запознат с модела на объекта на Power Point може да използва библиотеката веднага. Тя е лицензирана от MIT, отворен код в GitHub и изисква компайлър съвместим с C++20.

Създаване на презентация и добавяне на форма

RAII гарантира, че Presentation разрушителът освобождава всички ресурси автоматично, когато обектът излезе от обхвата. add_auto_shape() взема enum ShapeType , след което x/y позиция и ширина / височина в точки формата на text_frame осигурява достъп до зададен текст.

include(FetchContent)
FetchContent_Declare(
  aspose_slides_foss
  GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git
  GIT_TAG main
)
FetchContent_MakeAvailable(aspose_slides_foss)
#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/export/save_format.h>
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/shape_collection.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/slide.h>
#include <Aspose/Slides/Foss/slide_collection.h>
#include <Aspose/Slides/Foss/text_frame.h>

int main() ```cmake
include(FetchContent)
FetchContent_Declare(
  aspose_slides_foss
  GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git
  GIT_TAG main
)
FetchContent_MakeAvailable(aspose_slides_foss)

Форматирайте текст и приложите ефект за попълване

Форматирането на текста работи на ниво Portion най-малката единица от поредица символи. Отворете записания файл, навигирайте към първата част от първи параграф и задавайте свойствата на шрифта директно. Запълването с форма е независимо: зададете типа запълване на твърд и дайте цвят.

#include <Aspose/Slides/Foss/presentation.h>

namespace asf = Aspose::Slides::Foss;

int main() ```cpp
#include <Aspose/Slides/Foss/presentation.h>

namespace asf = Aspose::Slides::Foss;

int main() {
    asf::Presentation prs("output.pptx");
    auto& shape = prs.slides()[0].shapes()[0];
    auto& portion = shape.text_frame()
        ->paragraphs()[0].portions()[0];

    // Bold, 18pt text
    portion.portion_format().set_font_bold(asf::NullableBool::TRUE);
    portion.portion_format().set_font_height(18);

    // Solid background fill on the shape
    shape.fill_format().set_fill_type(asf::FillType::SOLID);

    prs.save("formatted.pptx", asf::SaveFormat::PPTX);
    return 0;
}

Frequently Asked Questions

Какво е Aspose.Slides FOSS за C++?

Това е безплатна библиотека с C++ лиценз за създаване, четене и редактиране на PowerPoint .pptx презентации без да се изисква Microsoft Office.

Какви формати на файлове се поддържат?

.pptx е поддържаният формат за четене/записване. Износът на PDF, HTML, SVG или изображения не е наличен в това издание.

За да го направите, трябва ли Microsoft Office или PowerPoint?

Не. Aspose.Slides FOSS е самостоятелна библиотека на C++ без зависимост от Microsoft Office, COM автоматизация или каквото и да било собствено време за изпълнение.

Как да го инсталирам?

Използвайте CMake FetchContent за интегриране на библиотеката директно от GitHub. Библиотеката изисква комплайър, съвместим с C++20.

Мога ли да прилагам визуални ефекти като сянка и блясък?

Да. Библиотеката поддържа ефекти за външна сянка, светене, размазване и отражение върху всеки обект от тип shape чрез EffectFormat API.

Използва ли библиотеката RAII за управление на ресурсите?

Да. Деструкторът на Presentation освобождава цялото вътрешно състояние автоматично, така че не е необходимо изрично почистване.

Ще унищожи ли PPTX неизвестно съдържание?

Не. Изследванията на неизвестни XML части, които се срещат по време на зареждане са запазени буквално при съхранение, така че съдържанието, което библиотеката все още не разбира никога не е изгубено.

Къде мога да намеря изходния код?

Библиотеката е лицензирана от MIT и се хоства на GitHub.

  

Ресурси за поддръжка и обучение

 Български