1. Produkter
  2.   Aspose.Slides
  3.   Aspose.Slides FOSS for C++

Aspose.Slides FOSS for C++

Opprett, les og rediger PowerPoint‑presentasjoner fra C++ — gratis og åpen kildekode, uten Office‑avhengighet.

Open-Source C++ Library for PowerPoint Presentasjoner

Aspose.Slides FOSS for C++ er en MIT-licensert bibliotek for å arbeide med PowerPoint .pptx filer. Integrere det via CMake FetchContent og umiddelbart begynne å lage, lese og redigere presentasjoner uten å installere Microsoft Office eller noen egen driftstid.

Biblioteket viser en Presentasjon API bygget rundt Presentation, Slide , ShapeCollection og Paragraph den konseptuelle modellen som brukes av PowerPoint selv. Legg til og fjerne slides, legg inn AutoShapes, Tabeller og Connectors, format tekst på karakternivå med bold, italic, font størrelse og farge, bruk solid eller gradient fyller, og legge til visuelle effekter (skygge , gløe, blur, refleksjon).

RAII semantikker sikrer pålitelig ressurs rengjøring: Presentation destruktoren frigjører alle interne tilstander automatisk. ukjente XML-deler som møtes under last er bevarte verbatim på lagring, så runde-trinn aldri ødelegger innhold biblioteket ikke forstår ennå. Biblioteket krever en C++20-kompilator. For ytterligere funksjoner se Aspose.Slides for C++ enterprise edition.

Presentasjon og Slide API

  • Skapa og åpne PPTX: Skapa nye presentasjoner eller åpner eksisterende .pptx filer via Presentation() eller Presentation(path).
  • Tilfør og fjerne slides: Programmet for å administrere SlideCollection med add_empty_slide(), remove() og remove_at().
  • AutoShapes: Innlegg rektangler, ellipser, linjer og andre ShapeType geometri via add_auto_shape().
  • Tabeller og koblinger: Legg til strukturerte tabellformer og tilkoblingslinjer mellom former via add_connector().
  • Speaker notater: Les og skriv per-slide speakernotater gjennom NotesSlideManager.
  • Leste kommentarer: Access-kommentarer triler ved å itere pres.comment_authors() og deres tilknyttede kommentarer.

Hvor Aspose.Slides FOSS kan brukes

  • Report generasjon: Bygg merket slidedekk fra data kilder uten Office.
  • Templateautomasjon: Fyll PPTX-templer med dynamisk innhold i CI/CD-rør.
  • Content migration: Les eksisterende presentasjoner og restrukturering eller re-styling slides.
  • Beginnede systemer: Behandle PPTX-filer i ytelseskritiske eller ressursbegrensede miljøer.
  • Batch-behandling: Apply uniform formatering endringer over store slide deck bibliotek.

Tekstformatering og visuelle effekter

  • ** Karakternivåformatering:** Bruk bold, italiensk, font størrelse og farge til individuelle Portion objekter via PortionFormat.
  • Solid og gradient fyller: Sett form fylt til en solid farge eller multi-stop lineær gradent ved hjelp av FillFormat og FillType.
  • Shadow and glow effects: Apply outside shadow, glove, blur, og reflection to any form via EffectFormat.
  • ** Paragrafliggjøring:** Sett venstre, senter, høyre eller rettferdiggjøre tilsvaringen per paragraf ved hjelp av ParagraphFormat og set_alignment().
  • Rund-trip sikker: ukjente XML-deler er bevaret verbatim på gjenopptak.

Utvikler erfaring

Aspose.Slides FOSS integreres via CMake FetchContent, så det er ingen manuell nedlasting eller system-wide installasjon som trengs.

API speiler PowerPoints eget objektmodell (Presentation, Slide , ShapeCollection ، TextFrame og Paragraph), slik at alle som er kjent med PowerPoints objektmodel kan bruke biblioteket umiddelbart. Det er MIT-licensert, åpen kilde på GitHub, og krever en C++20-kompilator.

Lag en presentasjon og legg til form

RAII sikrer at Presentation destruktoren frigjør alle ressurser automatisk når objektet går ut av rekkevidde. add_auto_shape() tar en ShapeType enum, deretter x/y posisjon og bredd/høyde i poeng - formen text_frame gir tilgang til innstilling av tekstinnhold.

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() ```cmake
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)

Format tekst og bruk en Fill Effect

Tekstformatering fungerer på Portion nivå - den minste enheten av et løp av tegn. Åpne den lagrede filen, navigere til første del av det første avsnittet og sette opp bokstavelighetsegenskaper direkte. Form fyll er uavhengig: Sett fylt type til solid og gi en farge.

#include <Aspose/Slides/Foss/presentation.h>

namespace asf = Aspose::Slides::Foss;

int main() ```cpp
#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];

    // Bold, 18pt text
    portion.portion_format().set_font_bold(asf::NullableBool::TRUE);
    portion.portion_format().set_font_height(18);

    // Solid background fill on the shape
    shape.fill_format().set_fill_type(asf::FillType::SOLID);

    prs.save("formatted.pptx", asf::SaveFormat::PPTX);
    return 0;
}

Ofte stilte spørsmål

Hva er Aspose.Slides FOSS for C++?

Det er en gratis, MIT-licensert C++ bibliotek for å lage, lese og redigere PowerPoint presentasjoner .pptx uten at Microsoft Office kreves.

Hvilke filformat støttes?

.pptx er det støttet les/skriverformat. Eksport til PDF, HTML, SVG eller bilder er ikke tilgjengelig i denne utgaven.

Trenger det Microsoft Office eller PowerPoint?

Aspose.Slides FOSS er en egen C++-bibliotek uten avhengighet fra Microsoft Office, COM automatisering eller noen proprietær driftstid.

Hvordan installerer jeg den?

Bruk CMake FetchContent for å integrere biblioteket direkte fra GitHub. Biblioteket krever en C++20-kompilator.

Kan jeg bruke visuelle effekter som skygge og gløe?

Ja. biblioteket støtter ytre skygge, gløe, blur og refleksjon effekter på ethvert formobjekt via EffectFormat API.

Bruker biblioteket RAII for ressursforvaltning?

Ja. Den Presentation destruktoren frigjør alle interne tilstander automatisk, så det er ingen eksplisitt rengjøring nødvendig.

Vil en PPTX ødelegge ukjent innhold?

No. ukjente XML-deler som er funnet under lasting, blir bevaret verbatim på lagring, så innhold biblioteket ikke forstår ennå aldri tapt.

Hvor kan jeg finne kildekoden?

Biblioteket er MIT-licensert og vært på GitHub. Bug rapporter og pull forespørsler er velkommen.

  

Støtte og læringsressurser

 Norsk