Ievads

Aspose.Slides FOSS for C++ is now available: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx failus vietējā C++, bez atkarības no Microsoft Office vai kāda īpašnieka izpildlaika.

Bibliotēka ir paredzēta izstrādātājiem, kuriem nepieciešams programmatiski ģenerēt vai manipulēt ar prezentāciju failiem: automatizēt slaidu komplektus no datiem, izvilkt tekstu un metadatus no augšupielādētiem PPTX failiem, izveidot prezentāciju balstītus atskaites caurulēm, vai integrēt prezentāciju veidošanu darbvirsmas un servera lietojumprogrammās. Jo aspose_slides_foss ir izveidota ar CMake, tā kompilējas un tiek izvietota Windows, macOS, un Linux.

Galvenās funkcijas

  • Pilnīgs divvirzienu PPTX atbalsts: Atvērt jebkuru .pptx failu, modificēt tā saturu un saglabāt to atpakaļ, nezaudējot nezināmās XML daļas, kuras bibliotēka vēl nesaprot.
  • Slaidu pārvaldība: Pievienot, noņemt un iterēt slaidus, izmantojot prs.slides(); prezentācija sākas ar vienu tukšu slaidu pēc tam, kad ir izveidots a Presentation.
  • AutoShapes, Tabulas un Savienotāji: Ievietot formas caur slide.shapes().add_auto_shape(), tabulārus datus caur slide.shapes().add_table(), un vizuālus savienotājus starp formām caur slide.shapes().add_connector().
  • Bagātināta teksta formatēšana: Formatēt tekstu rakstzīmju līmenī ar PortionFormat: fonta lielums, treknraksts, slīpraksts, pasvītrojums un ARGB krāsa caur FillType::SOLID un ColorFormat.
  • Aizpildījuma veidi: Lietot FillType::SOLID, Gradient, Pattern, vai Picture aizpilda jebkuru formu.
  • Vizuālie efekti: Ārējā ēna, spīdums, mīksta mala, izplūdums, atspoguļojums un iekšējā ēna caur shape.effect_format().
  • 3D formatting: Slīpums, kamera, gaismas ierīce, materiāls un izspiešanas dziļums caur shape.three_d_format().
  • Runātāja piezīmes: Pievienot piezīmju tekstu katram slaidam caur notes_slide_manager().add_notes_slide().
  • Vītnas komentāri: Pievienot komentārus ar autora metadatiem un slaida pozīciju.
  • Iegultie attēli: Iegult no faila ceļa, atmiņas bufera vai plūsmas.
  • Dokumenta īpašības: Lasīt un rakstīt kodola, lietotnes un pielāgotas īpašības.

Sākums

Pievienojiet bibliotēku, izmantojot CMake. Nepieciešams C++17 kompilators.

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)

Izveidojiet savu pirmo prezentāciju ar formu un saglabājiet to:

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

int main() {
    using namespace Aspose::Slides::Foss;

    Presentation prs;
    auto& slide = prs.slides()[0];
    auto& shape = slide.shapes().add_auto_shape(
        ShapeType::RECTANGLE, 50, 50, 400, 120
    );
    shape.text_frame()->set_text("Hello from Aspose.Slides FOSS!");
    prs.save("hello.pptx", SaveFormat::PPTX);
    return 0;
}

Tas Presentation destruktors automātiski atbrīvo visus iekšējos resursus, kad tas iziet no darbības tvēruma.

Teksta formatēšanas piemērs

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

using namespace Aspose::Slides::Foss;

Presentation prs;
auto& shape = prs.slides()[0].shapes().add_auto_shape(
    ShapeType::RECTANGLE, 50, 50, 500, 150
);
shape.text_frame()->set_text("Bold heading in corporate blue");
auto& fmt = shape.text_frame()->paragraphs()[0].portions()[0].portion_format();
fmt.set_font_height(28);
fmt.set_font_bold(NullableBool::TRUE);
fmt.fill_format().set_fill_type(FillType::SOLID);
fmt.fill_format().solid_fill_color().set_color(Color::from_argb(255, 0, 70, 127));
prs.save("formatted.pptx", SaveFormat::PPTX);

Pašreizējie ierobežojumi

Šajās jomās šajā izlaidumā tiek izsviestas izņēmumi:

  • Diagrammas, SmartArt un OLE objekti
  • Animācijas un slaidu pārejas
  • Eksportēt uz PDF, HTML, SVG vai attēlu formātiem
  • Hipersaites, darbības iestatījumi, VBA makrokomandas un digitālie paraksti

Nezināmas XML daļas, kas sastaptas ielādes laikā, tiek saglabātas precīzi saglabāšanas brīdī, tādējādi citu rīku radīti PPTX faili droši pāriet cauri apstrādei.

Skatīt arī