.NET में प्रस्तुतियों को कैसे बनाएं
Aspose.Slides FOSS for .NET आपको Microsoft Office पर कोई निर्भरता के बिना पूरी तरह से C# में PowerPoint प्रस्तुतियाँ बनाने की अनुमति देता है। यह गाइड दिखाता है कि नई प्रस्तुति कैसे बनाएं, स्लाइड और आकार जोड़ें, टेक्स्ट को फॉर्मेट करें, और परिणाम को सहेजें।
स्टेप-बाय-स्टेप गाइड
चरण 1: पैकेज स्थापित करें
NuGet से Aspose.Slides FOSS स्थापित करें। .NET 9.0 या बाद का संस्करण आवश्यक है।
dotnet add package Aspose.Slides.Fossस्थापना की पुष्टि करें:
using Aspose.Slides.Foss;
using var prs = new Presentation();
Console.WriteLine("Aspose.Slides FOSS ready");कोई अन्य सिस्टम पैकेज आवश्यक नहीं हैं।
चरण 2: आवश्यक नेमस्पेसेस आयात करें
प्रेजेंटेशन बनाने और सहेजने के लिए आवश्यक नेमस्पेस जोड़ें।
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;सभी आकार‑प्रकार स्थिरांक Aspose.Slides.Foss.ShapeType में स्थित हैं। सभी स्वरूपण प्रकार (FillType, NullableBool) भी Aspose.Slides.Foss में हैं।
चरण 3: प्रस्तुति बनाएं
new Presentation() का उपयोग एक using कथन के साथ करें। एक नई प्रस्तुति एक खाली स्लाइड से शुरू होती है।
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
Console.WriteLine($"Slides in new presentation: {prs.Slides.Count}");
// work with prs
prs.Save("output.pptx", SaveFormat.Pptx);Important: हमेशा Presentation को using कथन के साथ उपयोग करें। क्लास IDisposable को लागू करती है और इसके बिना संसाधन सही ढंग से रिलीज़ नहीं होंगे।
चरण 4: स्लाइड तक पहुँचें
पहली स्लाइड इंडेक्स 0 पर है। एक खाली प्रस्तुति में ठीक एक स्लाइड होती है।
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0]; // zero-based index
Console.WriteLine($"Slide at index 0: {slide}");
prs.Save("output.pptx", SaveFormat.Pptx);चरण 5: एक आकार जोड़ें
slide.Shapes.AddAutoShape() का उपयोग करके एक AutoShape जोड़ें। पैरामीटर (shapeType, x, y, width, height) सभी बिंदुओं में हैं (1 बिंदु = 1/72 इंच; मानक स्लाइड 720 × 540 pt)।
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
var slide = prs.Slides[0];
// Rectangle at (50, 50) with 400 wide and 120 tall
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 400, 120);
// Attach a text frame
shape.AddTextFrame("Hello from Aspose.Slides FOSS!");
prs.Save("with-shape.pptx", SaveFormat.Pptx);चरण 6: प्रस्तुति सहेजें
ऑब्जेक्ट को नष्ट करने से पहले prs.Save(path, SaveFormat.Pptx) को कॉल करें। PPTX एकमात्र समर्थित आउटपुट फ़ॉर्मेट है।
prs.Save("result.pptx", SaveFormat.Pptx);फ़ाइल को एटॉमिक रूप से लिखा जाता है; यदि इस कॉल से पहले कोई त्रुटि होती है, तो कोई आउटपुट फ़ाइल नहीं बनाई जाती।
पूर्ण कार्यशील उदाहरण
निम्नलिखित प्रोग्राम पहले स्लाइड पर एक शीर्षक आकार और दूसरे स्लाइड पर एक तालिका के साथ दो‑स्लाइड प्रस्तुति बनाता है।
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation();
// --- Slide 1: title shape ---
var slide1 = prs.Slides[0];
var title = slide1.Shapes.AddAutoShape(ShapeType.Rectangle, 40, 40, 640, 80);
var tf = title.AddTextFrame("Q1 Results: Executive Summary");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 32;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
// --- Slide 2: table ---
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
var slide2 = prs.Slides[1];
var table = slide2.Shapes.AddTable(40, 40,
new double[] { 200.0, 120.0, 120.0 },
new double[] { 40.0, 40.0, 40.0 });
string[] headers = { "Region", "Revenue", "Growth" };
string[][] data = {
new[] { "North", "$1.2M", "+8%" },
new[] { "South", "$0.9M", "+4%" },
};
for (int col = 0; col < headers.Length; col++)
table.Rows[0][col].TextFrame.Text = headers[col];
for (int row = 0; row < data.Length; row++)
for (int col = 0; col < data[row].Length; col++)
table.Rows[row + 1][col].TextFrame.Text = data[row][col];
prs.Save("q1-results.pptx", SaveFormat.Pptx);
Console.WriteLine("Saved q1-results.pptx");सामान्य समस्याएँ और समाधान
ObjectDisposedException
आप Presentation ऑब्जेक्ट का उपयोग using ब्लॉक समाप्त होने के बाद कर रहे हैं। सभी कार्य ऑब्जेक्ट के नष्ट होने से पहले होने चाहिए।
ShapeType के लिए नेमस्पेस त्रुटि गायब
सुनिश्चित करें कि आपके फ़ाइल के शीर्ष पर using Aspose.Slides.Foss; हो। ShapeType, NullableBool, FillType, और अन्य enums इस namespace में हैं।
SaveFormat के अलावा Pptx
SaveFormat मान को SaveFormat.Pptx के अलावा पास करने पर कोई अपवाद नहीं फेंका जाता। फ़ॉर्मेट पैरामीटर को चुपचाप अनदेखा किया जाता है और हमेशा PPTX उत्पन्न होता है। स्पष्ट होने के लिए हमेशा SaveFormat.Pptx का उपयोग करें।
अक्सर पूछे जाने वाले प्रश्न
डिफ़ॉल्ट स्लाइड आकार क्या है?
एक नया Presentation() मानक 10 × 7.5 इंच (720 × 540 पॉइंट) आकार में स्लाइड बनाता है। इस संस्करण में स्लाइड आकार बदलना अभी समर्थित नहीं है।
क्या मैं एक से अधिक स्लाइड जोड़ सकता हूँ?
हाँ। prs.Slides.AddEmptySlide(prs.LayoutSlides[0]) को कॉल करके एक खाली स्लाइड जोड़ें और इसे इंडेक्स द्वारा एक्सेस करें:
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
var slide2 = prs.Slides[1];क्या मैं मौजूदा फ़ाइल खोलकर स्लाइड्स जोड़ सकता हूँ?
हाँ:
using var prs = new Presentation("existing.pptx");
prs.Slides.AddEmptySlide(prs.LayoutSlides[0]);
prs.Save("existing.pptx", SaveFormat.Pptx);मैं किन फ़ॉर्मैट्स में सहेज सकता हूँ?
केवल SaveFormat.Pptx समर्थित है। इस संस्करण में PDF, HTML, SVG, या छवियों में निर्यात उपलब्ध नहीं है।