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

Aspose.Slides FOSS til C++

Opret, læs og rediger PowerPoint-præsentationer fra C++ — gratis og open-source, ingen Office-afhængighed påkrævet.

Open Source C++-bibliotek til PowerPoint-præsentationer

Aspose.Slides FOSS for C++ er et MIT-licenseret bibliotek til arbejde med PowerPoint .pptx filer. Integrer det via CMake FetchContent og straks begynde at oprette, læse og redigere præsentationer uden at installere Microsoft Office eller nogen proprietær runtime.

Biblioteket viser en præsentations-API, der er bygget omkring ‘Præsentation’, ‘Slide’, ‘ShapeCollection’, ‘TextFrame’, ‘Paragraf’ og ‘Part’, den konceptuelle model, der anvendes af PowerPoint selv. Tilføj og fjern diafragmer, indsæt AutoShapes, Tables og Connectors, format tekst på tegnniveau med bold, italisk, skrifttype og farve, anvend solid eller gradientfyldninger og tilføj visuelle effekter (skygge, glød, blur, refleksion).

RAII-semantik sikrer pålidelig ressourceoprydning: ‘Præsentation’-destruktoren frigiver automatisk alle interne tilstande. Ukendte XML-dele, der opstår under indlæsning, bevares verbalt på gemme, så rundrejser aldrig ødelægger indhold, som biblioteket endnu ikke forstår.

Præsentation og API

  • Opret og åbn PPTX: Opret nye præsentationer eller åbn eksisterende .pptx‑filer via Presentation() eller Presentation(path).
  • Tilføj og fjern slides: Administrer programmatisk SlideCollection med add_clone(), remove() og remove_at().
  • AutoShapes: Indsæt rektangler, ellipser, linjer og andre ShapeType‑geometrier via add_auto_shape().
  • Tabeller og forbindelser: Tilføj strukturerede tabelformer og forbindelseslinjer mellem former via add_connector().
  • Talernoter: Læs og skriv talernoter pr. slide via NotesSlideManager.
  • Trådede kommentarer: Få adgang til kommentartråde på diasniveau med get_slide_comments().

Hvor Aspose.Slides FOSS kan bruges

  • Rapportgenerering: Byg mærkede slide‑decks fra datakilder uden Office.
  • Skabelonautomatisering: Fyld PPTX‑skabeloner med dynamisk indhold i CI/CD‑pipelines.
  • Indholdsmigrering: Læs eksisterende præsentationer og omstrukturér eller omstil slides.
  • Indlejrede systemer: Processér PPTX‑filer i ydeevnekritiske eller ressourcebegrænsede miljøer.
  • Batchbehandling: Anvend ensartede formateringsændringer på tværs af store slide‑deck‑biblioteker.

Tekstformatering og visuelle effekter

  • Formatering på tegnniveau: Anvend fed, kursiv, skriftstørrelse og farve på individuelle Portion-objekter via PortionFormat.
  • Ensfarvede og gradientfyldninger: Indstil formens fyldning til en ensfarvet farve eller en lineær gradient med flere stop ved hjælp af FillFormat og FillType.
  • Skygge- og glød-effekter: Anvend ydre skygge, glød, sløring og refleksion på enhver form via EffectFormat.
  • Afsnitsjustering: Indstil venstre, centreret, højre eller blokjustering per afsnit ved hjælp af ParagraphFormat og set_alignment().
  • Rundtur-sikker: Ukendte XML-dele bevares ordret ved gengemning.

Udvikleroplevelse

Aspose.Slides FOSS integreres via CMake FetchContent, så ingen manuel download eller systemomfattende installation er nødvendig. Biblioteket bygges fra kildekode sammen med dit projekt.

API’et spejler PowerPoints egen objektmodel (Presentation, Slide, ShapeCollection, TextFrame, Paragraph, Portion), så enhver som er bekendt med PowerPoint-objektmodellen kan bruge biblioteket med det samme. Det er MIT-licenseret, open-source på GitHub, og kræver en C++17-kompatibel compiler.

Opret en præsentation og tilføj en form

RAII sikrer, at ‘Præsentation’ destruktor frigiver alle ressourcer automatisk, når objektet går ud af rækkevidde. ‘add_auto_shape()’ tager en ‘ShapeType’ enum, derefter x/y position og bredde/højde i punkter - figurens ’text_frame’ giver adgang til indstillet tekstindhold.

»Smage Indlæg (FetchContent) Søg efter ( afsløringsskemaet slides_foss GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git Git_tag vigtigste ) af FetchContent_MakeAvailable(aspose_slides_foss) er en af de mest populære »«

» Cpp #inkluderer <sæt/slides/foss.h>

Det er det primære ( Afsløringer::Foss::Præsentation prs auto& slide = prs.slides()[0]

Tilføj en rektangel AutoShape
Sæt i en skærm (tilføjelse af skærm)
    Aspose::Slides::Foss::ShapeType::Retangle,
    50, 50 og 150
) og
udgave af tekst.text_frame().set_text("Hej, Aspose.Slides!")

Prs.save (”output.pptx” eller ”output.pptx” )
Tilbage til 0

» »«

Formater tekst og anvend en fyldeeffekt

Tekstformatering fungerer på Portion-niveau — den mindste enhed i en sekvens af tegn. Åbn den gemte fil, naviger til den første portion af det første afsnit, og indstil skriftegenskaber direkte. Formfyldning er uafhængig: indstil fyldtypen til solid og tildel en farve.

#include <aspose/slides/foss.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];

    // Fed, 18pt tekst
    portion.portion_format().set_font_bold(NullableBool::TRUE);
    portion.portion_format().set_font_height(18);

    // Solid baggrundsudfyldning på formen
    shape.fill_format().set_fill_type(asf::FillType::Solid);

    prs.save("formatted.pptx");
    return 0;
}

Frequently Asked Questions

Hvad er Aspose.Slides FOSS for C++?

Det er et gratis, MIT-licenseret C++-bibliotek til at oprette, læse og redigere PowerPoint .pptx-præsentationer uden at kræve Microsoft Office.

Hvilke filformater understøttes?

PPTX er det understøttede format for læsning/skrivning. Eksport til PDF, HTML, SVG eller billeder er ikke tilgængelig i denne udgave.

Har du brug for Microsoft Office eller PowerPoint?

Nej. Aspose.Slides FOSS er et selvstændigt C++-bibliotek uden afhængighed af Microsoft Office, COM-automatisering eller nogen proprietær runtime.

Hvordan installerer jeg det?

Brug CMake FetchContent til at integrere biblioteket direkte fra GitHub. Biblioteket kræver en C++17-kompatibel compiler.

Kan jeg bruge visuelle effekter som skygge og glød?

Ja. Biblioteket understøtter ydre skygge, glød, sløring og refleksionseffekter på ethvert formobjekt via EffectFormat API.

Bruger biblioteket RAII til ressourceforvaltning?

Ja. ‘Præsentation’ destruktor frigiver alle interne tilstande automatisk, så der er ikke behov for eksplisitt rengøring.

Vil rundrejse med en PPTX ødelægge ukendt indhold?

De ukendte XML-dele, der opstår under indlæsning, bevares verbalt på gemme, så indhold, som biblioteket endnu ikke forstår, aldrig går tabt.

Hvor kan jeg finde kildekoden?

Biblioteket er MIT-licenseret og hostet på GitHub. Bug rapporter og trække anmodninger er velkomne.

  

Support og læringsressourcer

 Dansk