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
.pptxfailu, 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 aPresentation. - AutoShapes, Tabulas un Savienotāji: Ievietot formas caur
slide.shapes().add_auto_shape(), tabulārus datus caurslide.shapes().add_table(), un vizuālus savienotājus starp formām caurslide.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 caurFillType::SOLIDunColorFormat. - Aizpildījuma veidi: Lietot
FillType::SOLID,Gradient,Pattern, vaiPictureaizpilda 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.