Aspose.Slides FOSS for C++ egy MIT-licencű könyvtár a PowerPoint .pptx fájlok kezeléséhez. Integráld CMake FetchContent segítségével, és azonnal elkezdhetsz prezentációkat létrehozni, olvasni és szerkeszteni anélkül, hogy a Microsoft Office-t vagy bármilyen tulajdonosi futtatókörnyezetet telepítenél.
A könyvtár egy Presentation API-t tesz elérhetővé, amely a Presentation, Slide, ShapeCollection, TextFrame, Paragraph és Portion köré épül – ez a PowerPoint által használt koncepcionális modell. Hozzáadhatsz és eltávolíthatsz diákat, beilleszthetsz AutoShape-eket, táblázatokat és összekötőket, karakter szinten formázhatod a szöveget félkövérrel, dőltel, betűmérettel és színnel, alkalmazhatsz egyszínű vagy fokozatos kitöltéseket, valamint vizuális effektusokat (árnyék, ragyogás, elmosás, tükröződés).
Az RAII szemantika biztosítja a megbízható erőforrás-tisztítást: a Presentation destruktor automatikusan felszabadítja a teljes belső állapotot. A betöltés során felbukkanó ismeretlen XML részek szó szerint megmaradnak mentéskor, így a körkörös átalakítás soha nem semmisíti meg a könyvtár által még nem értett tartalmat. A könyvtár C++17‑kompatibilis fordítót igényel.
.pptx fájlokat a Presentation() vagy Presentation(path) segítségével.SlideCollection-t a add_clone(), remove() és remove_at() függvényekkel.ShapeType geometriákat a add_auto_shape() segítségével.add_connector() használatával.NotesSlideManager segítségével.get_slide_comments() segítségével.Portion objektumokra a PortionFormat segítségével.FillFormat és FillType használatával.EffectFormat segítségével.ParagraphFormat és a set_alignment() használatával.Aspose.Slides FOSS a CMake FetchContent segítségével integrálódik, így nincs szükség kézi letöltésre vagy rendszer‑szintű telepítésre. A könyvtár a forrásból épül a projekted mellett.
Az API tükrözi a PowerPoint saját objektummodelljét (Presentation, Slide, ShapeCollection, TextFrame, Paragraph, Portion), így bárki, aki ismeri a PowerPoint objektummodelljét, azonnal használhatja a könyvtárat. MIT licenc alatt áll, nyílt forráskódú a GitHubon, és C++17 kompatibilis fordítót igényel.
Az RAII biztosítja, hogy a Presentation destruktora automatikusan felszabadítja az összes erőforrást, amikor az objektum kilép a hatókörből. Az add_auto_shape() egy ShapeType enumot, majd x/y pozíciót és szélességet/magasságot pontban vár — a forma text_frame-je hozzáférést biztosít a szövegtartalom beállításához.
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() {
Aspose::Slides::Foss::Presentation prs;
auto& slide = prs.slides()[0];
// Adjunk hozzá egy téglalap AutoShape-et
auto& shape = slide.shapes().add_auto_shape(
Aspose::Slides::Foss::ShapeType::RECTANGLE,
50, 50, 400, 150
);
shape.text_frame()->set_text("Helló, Aspose.Slides!");
prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);
return 0;
}
A szövegformázás a Portion szinten működik — a karaktercsoport legkisebb egysége. Nyissa meg a mentett fájlt, navigáljon az első bekezdés első részéhez, és állítsa be közvetlenül a betűtípus tulajdonságait. A forma kitöltése független: állítsa a kitöltés típusát szilárdra, és adjon meg egy színt.
#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];
// Félkövér, 18pt szöveg
portion.portion_format().set_font_bold(asf::NullableBool::TRUE);
portion.portion_format().set_font_height(18);
// Szilárd háttérkitöltés az alakzaton
shape.fill_format().set_fill_type(asf::FillType::SOLID);
prs.save("formatted.pptx", asf::SaveFormat::PPTX);
return 0;
}
Ez egy ingyenes, MIT licencű C++ könyvtár PowerPoint .pptx prezentációk létrehozásához, olvasásához és szerkesztéséhez, Microsoft Office nélkül.
A PPTX a támogatott olvasás/írás formátum. A PDF, HTML, SVG vagy képek exportálása nem érhető el ebben a kiadásban.
Nem. Aspose.Slides FOSS egy önálló C++ könyvtár, amely nem függ a Microsoft Office-tól, a COM automatizálástól vagy bármilyen tulajdonosi futtatókörnyezettől.
Használja a CMake FetchContent-et a könyvtár közvetlen integrálásához a GitHub-ról. A könyvtár C++17‑kompatibilis fordítót igényel.
Igen. A könyvtár támogatja a külső árnyék, a ragyogás, az elmosás és a tükrözés hatásait bármely alakzatobjektumon az EffectFormat API-n keresztül.
Igen. A Presentation destruktor automatikusan felszabadítja az összes belső állapotot, így nincs szükség explicit takarításra.
Nem. A betöltés során felbukkanó ismeretlen XML részek szó szerint megmaradnak mentéskor, így a könyvtár által még nem értett tartalom soha nem vész el.
A könyvtár MIT licenc alatt áll, és a GitHubon van tárolva. Hibajelentések és pull requestek szívesen fogadottak.