Aspose.Slides FOSS - Aspose.Slides C++ के लिए FOSS एक MIT-लाइसेंस वाली लाइब्रेरी है जो PowerPoint .pptx फ़ाइलों के साथ काम करने के लिए है। इसे CMake FetchContent के माध्यम से इंटीग्रेट करें और तुरंत प्रेजेंटेशन बनाना, पढ़ना और संपादित करना शुरू करें, बिना Microsoft Office या किसी भी प्रोपायटरी रनटाइम को इंस्टॉल किए।
लाइब्रेरी एक Presentation API प्रदान करती है जो Presentation, Slide, ShapeCollection, TextFrame, Paragraph और Portion के आसपास निर्मित है, जो PowerPoint द्वारा स्वयं उपयोग किया जाने वाला अवधारणात्मक मॉडल है। स्लाइड्स जोड़ें और हटाएँ, AutoShapes, Tables और Connectors सम्मिलित करें, बोल्ड, इटैलिक, फ़ॉन्ट आकार और रंग के साथ अक्षर स्तर पर टेक्स्ट को फ़ॉर्मेट करें, सॉलिड या ग्रेडिएंट फ़िल लागू करें, और विज़ुअल इफ़ेक्ट्स (shadow, glow, blur, reflection) जोड़ें।
RAII सेमेंटिक्स विश्वसनीय संसाधन सफाई सुनिश्चित करते हैं: Presentation डेस्ट्रक्टर सभी आंतरिक स्थिति को स्वचालित रूप से रिलीज़ करता है। लोड के दौरान मिलने वाले अज्ञात XML भागों को सहेजते समय शब्दशः संरक्षित रखा जाता है, इसलिए राउंड‑ट्रिपिंग कभी भी उस सामग्री को नष्ट नहीं करता जिसे लाइब्रेरी अभी तक नहीं समझती। लाइब्रेरी को C++20‑समर्थित कंपाइलर की आवश्यकता है। अतिरिक्त सुविधाओं के लिए, देखें Aspose.Slides for C++ enterprise edition।
.pptx फ़ाइलें Presentation() या Presentation(path) के माध्यम से खोलें।SlideCollection को add_empty_slide(), remove(), और remove_at() के साथ प्रबंधित करें।ShapeType ज्यामितियों को add_auto_shape() के माध्यम से सम्मिलित करें।add_connector() के माध्यम से जोड़ें।NotesSlideManager के माध्यम से पढ़ें और लिखें।pres.comment_authors() को इटररेट करके टिप्पणी थ्रेड्स और उनके संबंधित टिप्पणियों तक पहुँचें।Portion वस्तुओं पर बोल्ड, इटैलिक, फ़ॉन्ट आकार और रंग लागू करें PortionFormat के माध्यम से।FillFormat और FillType का उपयोग करके।EffectFormat के माध्यम से।ParagraphFormat और set_alignment() का उपयोग करके।Aspose.Slides FOSS CMake FetchContent के माध्यम से एकीकृत होता है, इसलिए कोई मैनुअल डाउनलोड या सिस्टम‑व्यापी इंस्टॉलेशन आवश्यक नहीं है। लाइब्रेरी आपके प्रोजेक्ट के साथ स्रोत से बनती है।
API PowerPoint के अपने ऑब्जेक्ट मॉडल (Presentation, Slide, ShapeCollection, TextFrame, Paragraph, Portion) को प्रतिबिंबित करता है, इसलिए PowerPoint ऑब्जेक्ट मॉडल से परिचित कोई भी लाइब्रेरी का तुरंत उपयोग कर सकता है। यह MIT-licensed, open-source GitHub पर है, और एक C++20-compliant कंपाइलर की आवश्यकता होती है।
RAII सुनिश्चित करता है कि Presentation डेस्ट्रक्टर सभी संसाधनों को स्वचालित रूप से मुक्त कर दे जब ऑब्जेक्ट स्कोप से बाहर हो जाता है। add_auto_shape() एक ShapeType एन्यू लेता है, फिर x/y स्थिति और बिंदुओं में चौड़ाई/ऊँचाई — आकार का text_frame टेक्स्ट सामग्री सेट करने के लिए एक्सेस प्रदान करता है।
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)
टेक्स्ट फ़ॉर्मेटिंग Portion स्तर पर काम करती है — अक्षरों की एक श्रृंखला की सबसे छोटी इकाई। सहेजी गई फ़ाइल खोलें, पहले पैराग्राफ के पहले भाग पर जाएँ, और फ़ॉन्ट गुण सीधे सेट करें। शैप फ़िल स्वतंत्र है: फ़िल प्रकार को सॉलिड सेट करें और एक रंग असाइन करें।
#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;
}
यह एक मुफ्त, MIT-लाइसेंस वाला C++ लाइब्रेरी है जो Microsoft Office की आवश्यकता के बिना PowerPoint .pptx प्रस्तुतियों को बनाने, पढ़ने और संपादित करने के लिए है।
.pptx समर्थित पढ़ने/लिखने का फ़ॉर्मेट है। इस संस्करण में PDF, HTML, SVG, या छवियों में निर्यात उपलब्ध नहीं है।
नहीं। Aspose.Slides FOSS एक स्वतंत्र C++ लाइब्रेरी है जिसमें Microsoft Office, COM ऑटोमेशन, या किसी भी स्वामित्व वाले रनटाइम पर कोई निर्भरता नहीं है।
CMake FetchContent का उपयोग करके लाइब्रेरी को सीधे GitHub से एकीकृत करें। लाइब्रेरी को C++20‑अनुपालन कंपाइलर की आवश्यकता होती है।
हाँ। लाइब्रेरी EffectFormat API के माध्यम से किसी भी आकार वस्तु पर बाहरी छाया, चमक, धुंधलापन और प्रतिबिंब प्रभावों का समर्थन करती है।
हाँ। Presentation डेस्ट्रक्टर सभी आंतरिक स्थिति को स्वचालित रूप से मुक्त कर देता है, इसलिए स्पष्ट सफाई की आवश्यकता नहीं है।
नहीं। लोड के दौरान मिलने वाले अज्ञात XML भागों को सहेजते समय शब्दशः संरक्षित रखा जाता है, इसलिए लाइब्रेरी द्वारा अभी तक न समझे गए सामग्री कभी खोती नहीं है।
लाइब्रेरी MIT-लाइसेंस वाली है और GitHub पर होस्ट की गई है। बग रिपोर्ट और पुल अनुरोधों का स्वागत है।