Како функционише FOSS у C++?
aspose_slides_foss for 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: Спробуйте зробити презентацію
Створити презентацію, починаючи з однієї порожнечої слайду, а потім зберегти її:
#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_targets PRIVATE aspose_slides_foss) “) знаходиться у вашому ̋CMakeLists.txt∂ і те, щоб бібліотека була успішно отримана за допомогою ̆FetchContent∂ .
Файл заголовка не знайдений Включити повний шлях, що починається з <Aspose/Slides/Foss/...>. Виконайте ⌒cmake –build` із директорії будову, а не з джерелової директориї.
НепідтримуєтьсяOperationException еквівалент для непідтриманих функцій Деякі функції (графи, анімації, PDF-експорт) не підтримуються. Перевірте документацію проекту з поточним списком обмежень.
Повільнення при доступі до слайдів за показником За замовчуванням Presentation завжди створює один слайда в індексі 0. Якщо ви завантажили порожній файл або видалили всі слайды, ̋prs.slides() [0]` буде поза діапазоном.
Часто задані запитання
Чи потрібен Microsoft Office для aspose_slides_foss?
Ні. Бібліотека створює і читає файли .pptx на рідній мові C++, не залежачи від Microsoft Office, автоматизації COM або Windows API.
Які компілятори та стандарти C++ підтримуються?
Бібліотека вимагає C++20 або більш пізнього. Вона перевірена з GCC 11+, Clang 13+ та MSVC 2022.
Чи бібліотека безкоштовна для комерційного використання?
Ви можете використовувати, модифікувати та перерозподіляти його для будь-яких цілей, включаючи комерційні програми.
Чи можу я завантажити існуючий файл PPTX?
Так. Передайте шлях файлу конструктору Presentation:
Presentation prs("existing.pptx");
prs.save("copy.pptx", SaveFormat::PPTX);Як додати кілька слайдів?
Використовуйте prs.slides().add_empty_slide(layout) після отримання макет з ̋prS.masters (())[0].layouts_ slides (() [0]` .
Дивіться також
- FAQ Aspose.Slides FOSS для C++
- Як створювати презентації в C++
- Як додавати форми в C++
- Початок Документи
- Референція API