Jak zacząć z Aspose.Slides FOSS dla C++

Jak zacząć z Aspose.Slides FOSS dla C++

aspose_slides_foss dla C++ jest darmową, licencjonowaną przez MIT biblioteką do tworzenia i edycji PowerPoint .pptx pliki – nie wymagane przez Microsoft Office, zbudowane z CMake.

Przewodnik krok po kroku

Krok 1: Dodaj bibliotekę za pośrednictwem CMake

Dodaj aspose_slides_foss do Twojego CMakeLists.txt (Wymagane są pliki 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)

Krok 2: Włącz wymagane nagłówki

Włącz nagłówki do klas, których potrzebujesz:

#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>

Krok 3: Tworzenie prezentacji

Konstrukcja A Presentation Zacznij od jednego białego ślidu, a następnie zaoszczędź go:

#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;
}

Krok 4: Dodaj kształt tekstem

Używanie slide.shapes().add_auto_shape() Wpisz rektangulę, a następnie zadzwoń text_frame()->set_text() Aby dodać treść tekstową:

#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;
}

Krok 5: Wprowadź do niego i zaoszczędzaj

Ustaw solidny kolor na kształcie przed oszczędzaniem:

#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;
}

Wspólne problemy i rozwiązania

Błędy w odniesieniu do nieokreślonych referencji Bezpieczeństwo target_link_libraries(your_target PRIVATE aspose_slides_foss) Jest w Twoim CMakeLists.txt Biblioteka została pomyślnie zniszczona przez FetchContent.

Archiwum nie znaleziono Włącz całą trasę, która zaczyna się od <Aspose/Slides/Foss/...>.- biegać cmake --build z dyrektora budowlanego, a nie z źródłowego.

UnsupportedOperationException Równowartość dla nieopieranych funkcji Niektóre funkcje (grafiki, animacje, eksportowanie plików PDF) nie są obsługiwane. sprawdź projekt Dokumenty dotyczące aktualnego listy ograniczeń.

Upadek przy dostępie do śladów według indeksu Wady deficytu Presentation Zawsze tworzy jeden ślad na indeksie 0. Jeśli pobrałeś pusty - usunąć lub usunić wszystkie pliki, prs.slides()[0] Będzie to poza zakresem.

Często zadawane pytania

Czy aspose_slides_foss wymaga Microsoft Office?

Biblioteka tworzy i czyta. .pptx pliki w C++ bez zależności w programie Microsoft Office, automatyzacji COM lub aplikacjach Windows.

Jakie standardy i systemy C++ są obsługiwane?

Biblioteka wymaga C++20 lub nowszej. jest testowana z GCC 11+, Clang 13+ i MSVC 2022.

Czy biblioteka jest wolna do użytku komercyjnego?

Jest on wydany na podstawie licencji MIT. Możesz używać, modyfikować i redistribuować go do jakiegokolwiek celu, w tym aplikacji komercyjnych.

Czy mogę pobrać istniejący plik PPTX?

Przejdź drogą pliku do Presentation Konstruktorzy :

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

Jak dodać kilka plików?

Używanie prs.slides().add_empty_slide(layout) Po uzyskaniu rozmiaru z prs.masters()[0].layout_slides()[0].

Zobacz również

 Polski