Aspose.Slides FOSS for C++ ir MIT licencēta bibliotēka darbam ar PowerPoint .pptx failiem. Integrējiet to, izmantojot CMake FetchContent, un uzreiz sāciet veidot, lasīt un rediģēt prezentācijas, neinstalējot Microsoft Office vai kādu proprietāru izpildlaiku.
Bibliotēka nodrošina Presentation API, kas balstīts uz Presentation, Slide, ShapeCollection, TextFrame, Paragraph un Portion, konceptuālo modeli, ko izmanto pats PowerPoint. Pievienojiet un noņemiet slaidus, ievietojiet AutoShapes, Tables un Connectors, formatējiet tekstu rakstzīmju līmenī, izmantojot treknrakstu, slīprakstu, fonta lielumu un krāsu, piemērojiet vienkāršus vai gradienta aizpildījumus un pievienojiet vizuālos efektus (ēna, spīdums, izplūdums, atspoguļojums).
RAII semantika nodrošina uzticamu resursu attīrīšanu: Presentation destruktors automātiski atbrīvo visu iekšējo stāvokli. Nezināmi XML daļas, kas sastaptas ielādē, tiek saglabātas burtiski, tāpēc apgrieztā apstrāde nekad neiznīcina saturu, ko bibliotēka vēl nesaprot. Bibliotēkai ir nepieciešams C++20‑savietojams kompilators. Papildu funkcijām skatiet Aspose.Slides for C++ enterprise edition.
.pptx datnes, izmantojot Presentation() vai Presentation(path).SlideCollection ar add_empty_slide(), remove() un remove_at().ShapeType ģeometrijas, izmantojot add_auto_shape().add_connector().NotesSlideManager.pres.comment_authors() un to saistītos komentārus.Portion objektiem, izmantojot PortionFormat.FillFormat un FillType.EffectFormat.ParagraphFormat un set_alignment().Aspose.Slides FOSS integrējas caur CMake FetchContent, tāpēc nav nepieciešama manuāla lejupielāde vai sistēmas līmeņa instalācija. Bibliotēka tiek būvēta no avota kopā ar jūsu projektu.
API atspoguļo PowerPoint paša objektu modeli (Presentation, Slide, ShapeCollection, TextFrame, Paragraph, Portion), tāpēc ikviens, kas pazīst ar PowerPoint objektu modeli, var uzreiz izmantot bibliotēku. Tā ir licencēta ar MIT, atvērta pirmkods uz GitHub, un tai ir nepieciešams C++20 atbilstošs kompilators.
RAII nodrošina, ka Presentation destruktors automātiski atbrīvo visus resursus, kad objekts iziet no darbības tvēruma. add_auto_shape() pieņem ShapeType enum, tad x/y pozīciju un platumu/augstumu punktos — formas text_frame nodrošina piekļuvi teksta satura iestatīšanai.
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() {
Aspose::Slides::Foss::Presentation prs;
auto& slide = prs.slides()[0];
// Add a rectangle AutoShape
auto& shape = slide.shapes().add_auto_shape(
Aspose::Slides::Foss::ShapeType::RECTANGLE,
50, 50, 400, 150
);
shape.text_frame()->set_text("Hello, Aspose.Slides!");
prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);
return 0;
}
```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)
Teksta formatēšana darbojas Portion līmenī — mazākā rakstzīmju virknes vienība. Atveriet saglabāto failu, pārejiet uz pirmo pirmā rindkopas daļu un iestatiet fonta īpašības tieši. Formas aizpildījums ir neatkarīgs: iestatiet aizpildījuma veidu uz cietu un piešķiriet krāsu.
#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;
}
```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;
}
Tas ir bezmaksas, MIT licencēts C++ bibliotēka, kas ļauj izveidot, lasīt un rediģēt PowerPoint .pptx prezentācijas, neprasot Microsoft Office.
.pptx ir atbalstīts lasīšanas/rakstīšanas formāts. Eksportēšana uz PDF, HTML, SVG vai attēliem nav pieejama šajā izdevumā.
Nē. Aspose.Slides FOSS ir neatkarīga C++ bibliotēka, kas neietekmē Microsoft Office, COM automatizāciju vai kādu īpašu izpildlaiku.
Izmantojiet CMake FetchContent, lai integrētu bibliotēku tieši no GitHub. Bibliotēkai ir nepieciešams C++20 saderīgs kompilators.
Jā. Bibliotēka atbalsta ārējo ēnu, spīdumu, izpludināšanu un atspoguļošanas efektus uz jebkura formas objekta, izmantojot EffectFormat API.
Jā. Presentation destruktors automātiski atbrīvo visu iekšējo stāvokli, tāpēc nav vajadzīga izteikta tīrīšana.
Nē. Nezinātas XML daļas, kas sastaptas ielādes laikā, tiek saglabātas precīzi saglabāšanas brīdī, tāpēc saturs, ko bibliotēka vēl nesaprot, nekad netiek zaudēts.
Bibliotēka ir licencēta ar MIT licenci un tiek mitināta GitHub. Kļūdu ziņojumi un pull requests ir laipni gaidīti.