Introduktion
Aspose.Slides FOSS för C++ (aspose_slides_foss) är ett fritt, MIT-licensierat bibliotek för att skapa och redigera PowerPoint .pptx-filer i ren C++. Det körs på Windows, macOS och Linux utan beroende av Microsoft Office.
Den här artikeln går igenom nyckelfunktionerna som finns i den aktuella versionen.
Nyckelfunktioner
Laddning och sparande av presentationer
Presentation är rotobjektet. Konstruera det utan argument för att skapa en ny fil eller skicka en filsökväg för att läsa in en befintlig. Anropa save() med en sökväg och SaveFormat för att skriva utdata:
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/export/save_format.h>
using namespace Aspose::Slides::Foss;
// Create new
Presentation prs;
prs.save("output.pptx", SaveFormat::PPTX);
// Load and save
Presentation prs2("existing.pptx");
prs2.save("copy.pptx", SaveFormat::PPTX);
Bildhantering
Metoden slides() returnerar bildsamlingen. Lägg till bilder med add_empty_slide(), ta bort dem med remove() och kom åt befintliga bilder via index:
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/slide_collection.h>
#include <Aspose/Slides/Foss/export/save_format.h>
using namespace Aspose::Slides::Foss;
Presentation prs;
auto& slide = prs.slides()[0]; // First slide (created automatically)
// Add a second slide using the first master/layout
auto& layout = prs.masters()[0].layout_slides()[0];
auto& newSlide = prs.slides().add_empty_slide(layout);
prs.save("two_slides.pptx", SaveFormat::PPTX);
AutoShape Infogning och text
Lägg till former med slide.shapes().add_auto_shape(). Kom åt textramen via shape.text_frame() för att ange textinnehåll:
#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;
Presentation prs;
auto& slide = prs.slides()[0];
auto& shape = slide.shapes().add_auto_shape(
ShapeType::RECTANGLE, 50, 50, 300, 100
);
shape.text_frame()->set_text("Hello from Aspose.Slides FOSS");
prs.save("shape_demo.pptx", SaveFormat::PPTX);
Solida fyllningar
Applicera FillType::SOLID med en ARGB-färg på valfri form:
#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;
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);
prs.save("solid_fill.pptx", SaveFormat::PPTX);
Visuella effekter
Applicera yttre skuggor, glöd och mjuka kant-effekter via shape.effect_format():
#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/effect_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;
Presentation prs;
auto& shape = prs.slides()[0].shapes().add_auto_shape(
ShapeType::RECTANGLE, 100, 100, 300, 150
);
auto& ef = shape.effect_format();
ef.enable_outer_shadow_effect();
ef.outer_shadow_effect().set_blur_radius(8);
ef.outer_shadow_effect().set_distance(6);
ef.outer_shadow_effect().set_direction(45);
prs.save("shadow.pptx", SaveFormat::PPTX);
Snabbstart
Lägg till biblioteket via CMake (C++20-kompilator krävs):
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)
target_link_libraries(your_target PRIVATE aspose_slides_foss)
#include <Aspose/Slides/Foss/auto_shape.h>
#include <Aspose/Slides/Foss/presentation.h>
#include <Aspose/Slides/Foss/shape_type.h>
#include <Aspose/Slides/Foss/text_frame.h>
#include <Aspose/Slides/Foss/export/save_format.h>
int main() {
using namespace Aspose::Slides::Foss;
Presentation prs;
auto& shape = prs.slides()[0].shapes().add_auto_shape(
ShapeType::RECTANGLE, 50, 50, 400, 150
);
shape.text_frame()->set_text("My first slide");
prs.save("first.pptx", SaveFormat::PPTX);
return 0;
}
Stödda format
| Format | Filändelse | Läs | Skriv |
|---|---|---|---|
| PPTX | .pptx | — | ✓ |
Öppen källkod & licensiering
Aspose.Slides FOSS för C++ är släppt under MIT-licensen. Bygg från källkod via CMake. Kommersiell användning, vidaredistribution och modifiering är alla tillåtna.