Как да започнете с Aspose.Slides FOSS за C++

Как да започнете с Aspose.Slides FOSS за C++

aspose_slides_foss за C++ е безплатна, лицензирана от MIT библиотека за създаване и редактиране PowerPoint .pptx файлове – няма изискване за Microsoft Office, изградени с CMake.

Стъпка по стъпка ръководство

Стъпка 1: Добавете библиотеката чрез CMake

Добавяне aspose_slides_foss за твоята CMakeLists.txt (Подготвени са и C++20 съставни текстове):

cmake_minimum_required(VERSION 3.20)
project(MyProject)

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)

add_executable(my_app main.cpp)
target_link_libraries(my_app PRIVATE aspose_slides_foss)

Стъпка 2: Включете необходимите глави

Включете ръководството за класовете, от които се нуждаете:

#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/text_frame.h>
#include <Aspose/Slides/Foss/export/save_format.h>

Стъпка 3: Създайте презентация

Създаване на A Presentation За да започнете с една бяла скида, след това я спестите:

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

using namespace Aspose::Slides::Foss;

int main() {
    Presentation prs;
    prs.save("new_presentation.pptx", SaveFormat::PPTX);
    return 0;
}

Стъпка 4: Добавете форма с текст

Използване slide.shapes().add_auto_shape() да вмъкнете правоъгълник, след това обадете се text_frame()->set_text() За да добавите текст съдържание:

#include <Aspose/Slides/Foss/auto_shape.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>
#include <Aspose/Slides/Foss/export/save_format.h>

using namespace Aspose::Slides::Foss;

int main() {
    Presentation prs;
    auto& slide = prs.slides()[0];
    auto& shape = slide.shapes().add_auto_shape(
        ShapeType::RECTANGLE, 50, 50, 400, 150
    );
    shape.text_frame()->set_text("Hello from Aspose.Slides FOSS!");
    prs.save("with_shape.pptx", SaveFormat::PPTX);
    return 0;
}

Стъпка 5: Нанесете пълнеж и спестете

Направете солиден цвят на формата, преди да спестите:

#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/fill_format.h>
#include <Aspose/Slides/Foss/fill_type.h>
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/export/save_format.h>

using namespace Aspose::Slides::Foss;

int main() {
    Presentation prs;
    auto& shape = prs.slides()[0].shapes().add_auto_shape(
        ShapeType::RECTANGLE, 100, 100, 400, 200
    );
    shape.fill_format().set_fill_type(FillType::SOLID);
    shape.fill_format().solid_fill_color().set_color(0xFF, 0x46, 0x82, 0xB4);
    shape.text_frame()->set_text("Styled shape");
    prs.save("styled.pptx", SaveFormat::PPTX);
    return 0;
}

Общи проблеми и фиксиране

Грешки в линковете с неразрешени референции Увереност target_link_libraries(your_target PRIVATE aspose_slides_foss) в твоята е CMakeLists.txt Библиотеката е успешно заградена чрез FetchContent.

Заглавието не е намерено Включете пътят, който започва с <Aspose/Slides/Foss/...>.бягане cmake --build От директората на строителството, а не от източника.

UnsupportedOperationException Еквивалент за неподходящи функции Някои функции (категории, анимации, експорт на PDF) не се поддържат. Документация за текущия списък на ограниченията.

Стрелба при достъп до слайдове по индекс Дефолтът Presentation винаги създава един слайд на индекс 0. Ако сте заредили празен да се изтрие или премахне всички слайдове, prs.slides()[0] Ще бъде извън диапазона.

Често задавани въпроси

Дали aspose_slides_foss изисква Microsoft Office?

Библиотеката създава и чете. .pptx В C++ няма зависимост. Microsoft Office, COM автоматизация или Windows API.

Кои стандарти и C++ стандартите се поддържат?

Библиотеката изисква C++20 или по-късно. тя е тествана с GCC 11+, Clang 13+ и MSVC 2022.

Библиотеката е свободна за търговско ползване.?

Да. Тя е издадена под лиценза на MIT. Можете да я използвате, модифицирате и преразпределите за всякакви цели, включително търговски приложения.

Мога ли да изтегля съществуващ PPTX файл?

Да. Преместете файловия път към Presentation Създателът :

Presentation prs("existing.pptx");
prs.save("copy.pptx", SaveFormat::PPTX);

Как да добавя няколко слайда?

Използване prs.slides().add_empty_slide(layout) След като се получи извадка от prs.masters()[0].layout_slides()[0].

Виж също

 Български