איך עושים עם FOSS ב-C++?

איך עושים עם FOSS ב-C++?

aspose_slides_foss for C++ egy ingyenes, MIT-licencelt könyvtár a PowerPoint ̋.pptx` fájlok létrehozására és szerkesztésére nem szükséges Microsoft Office, amelyet CMake segítségével építettek.

Lépésről lépésre szóló útmutató

  • A helyfogadó.

1. lépés: Adja hozzá a könyvtárat CMake-on keresztül

Adja hozzá a aspose_slides_foss-t a CMakeLists.txt’-hoz (C++20 kompilátor szükséges):

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. lépés: Adja be a szükséges címcímeket

A szükséges osztályok címét is be kell adni:

#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. lépés: Teremtsünk előadást!

Egy Presentation-t egy üres dialal kezdve, majd mentse:

#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. lépés: Töltsön be egy formát szöveggel

Használja a slide.shapes().add_auto_shape (()-t, hogy beillesszon egy téglalapot, majd hívja az ̋text_frame (()) ->set_text ((()⌒-et, ha szövegtartalmat szeretne hozzáadni:

#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. lépés: Töltsön be és mentse meg!

Töltsön egy szilárd színt a formára, mielőtt megőrzi:

#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;
}
  • A helyfogadó.

Általános problémák és megoldások

A linker hibák, és a hivatkozások nem meghatározottak Biztosítsd `target_link_libraries ((your_targets PRIVATE aspose_slides_foss) “) az ̋CMakeLists.txt̋-ban található könyvtárat, valamint hogy a könyvhelyet sikeresen letöltötték a ∂FetchContent∂ segítségével.

A fejfájl nem található Beilleszti a <Aspose/Slides/Foss/...>-vel kezdődő teljes pályát. Futtassa el az ̋cmake –build∂t a építési címkéből, és ne a forráskönyvtől.

Nem támogatottOperationException egyenértékű nem támogatottak számára Néhány funkció (tábla, animációk, PDF export) nem érhető el. A jelenlegi korlátozások listáját nézze meg a projekt dokumentációjában.

A lemezek index szerinti elérése esetén bekapcsolás Az alapértelmezett Presentation mindig egy slide-t hoz létre a 0 indexnél. Ha üres fájlt töltöttél vagy eltávolítottad az összes slides, akkor a ̋prs.slides() [0]` nem lesz elérhető.

Gyakran feltett kérdések

Az aspose_slides_foss-nak szüksége van a Microsoft Office-ra?

Nem. A könyvtár a C++-ban készíti és olvassa az .pptx fájlokot, nem függve Microsoft Office-tól, COM automatizációból vagy Windows API-ktől.

Milyen kompilátorokat és C++ szabványokat támogatnak?

A könyvtár C++20 vagy újabb nyelvet igényel. GCC 11+, Clang 13+ és MSVC 2022 teszteléssel van elvégezve.

A könyvtár ingyenes kereskedelmi célra?

Igen, a MIT licenc alapján adják ki. Bármely célra használhatja, módosíthatja és továbbadhatná azt, beleértve a kereskedelmi alkalmazásokat is.

Meglévő PPTX fájlt tölthetek?

Igen. A fájl útvonalát adja át a Presentation konstruktornak:

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

Hogyan adhatok hozzá több dialapontot?

Használja a prs.slides().add_empty_slide ((layout)-t, miután elvégezte az ̋prS.masters (()) [0].layouts_ slides (() [ 0] ̆ táblázatot.

Lásd még:

  • FAQ Aspose.Slides FOSS a C++-hez
  • Hogyan készítsünk bemutatót C++-ban?
  • Hogyan adjunk hozzá alakzatokat a C++-ban?
  • Kezdőlapok
  • API hivatkozás
 Magyar