.NET में प्रस्तुतियों को लोड करने का तरीका
Aspose.Slides FOSS for .NET lets you open any .pptx फ़ाइल, उसकी सामग्री की जाँच करें, और या तो इसे PPTX में वापस सहेजें या उससे डेटा निकालें। यह गाइड फ़ाइल खोलने, स्लाइड्स पर इटररेट करने, शैप टेक्स्ट पढ़ने, और सहेजने की राउंड‑ट्रिपिंग को कवर करता है।.
स्टेप बाय स्टेप गाइड
Step 1: पैकेज स्थापित करें
dotnet add package Aspose.Slides.Fossचरण 2: मौजूदा प्रस्तुति खोलें
फ़ाइल पथ को पास करें new Presentation(). एक उपयोग करें using स्टेटमेंट ताकि सफ़ाई सुनिश्चित हो।.
using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;
using var prs = new Presentation("input.pptx");
Console.WriteLine($"Slide count: {prs.Slides.Count}");
prs.Save("output.pptx", SaveFormat.Pptx);स्रोत फ़ाइल में अज्ञात XML भागों को जैसा है वैसा ही संरक्षित किया जाता है: लाइब्रेरी कभी भी ऐसी सामग्री नहीं हटाती जिसे वह अभी तक समझ नहीं पाती।.
चरण 3: स्लाइड्स की जाँच करें
सभी स्लाइड्स पर इटररेट करें और उनका इंडेक्स प्रिंट करें:
using Aspose.Slides.Foss;
using var prs = new Presentation("deck.pptx");
for (int i = 0; i < prs.Slides.Count; i++)
{
var slide = prs.Slides[i];
int shapeCount = slide.Shapes.Count;
Console.WriteLine($"Slide {i}: {shapeCount} shapes");
}चरण 4: शैप टेक्स्ट पढ़ें
शेप्स पर इटररेट करें और उन शेप्स से टेक्स्ट पढ़ें जिनमें एक TextFrame:
using Aspose.Slides.Foss;
using var prs = new Presentation("deck.pptx");
foreach (var slide in prs.Slides)
{
foreach (var shape in slide.Shapes)
{
if (shape is IAutoShape autoShape && autoShape.TextFrame != null)
{
string text = autoShape.TextFrame.Text;
if (!string.IsNullOrWhiteSpace(text))
Console.WriteLine($" Shape text: {text}");
}
}
}चरण 5: दस्तावेज़ गुण पढ़ें
कोर डॉक्यूमेंट प्रॉपर्टीज़ तक पहुँचें prs.DocumentProperties:
using Aspose.Slides.Foss;
using var prs = new Presentation("deck.pptx");
var props = prs.DocumentProperties;
Console.WriteLine($"Title: {props.Title}");
Console.WriteLine($"Author: {props.Author}");
Console.WriteLine($"Subject: {props.Subject}");चरण 6: राउंड‑ट्रिप सहेजें
प्रस्तुति की जाँच या संशोधन के बाद, इसे PPTX में वापस सहेजें:
prs.Save("output.pptx", SaveFormat.Pptx);विभिन्न पाथ पर सहेजने से नई फ़ाइल बनती है। समान पाथ पर सहेजने से मूल फ़ाइल ओवरराइट हो जाती है।.
सामान्य समस्याएँ और समाधान
FileNotFoundException
जाँचें कि पथ .pptx फ़ाइल कार्यशील डायरेक्टरी के सापेक्ष सही है। उपयोग करें Path.Combine मजबूत पाथ निर्माण के लिए:
string path = Path.Combine(AppContext.BaseDirectory, "assets", "deck.pptx");
using var prs = new Presentation(path);Exception: File format is not supported
लाइब्रेरी समर्थन करती है .pptx (Office Open XML) केवल। लेगेसी .ppt (binary PowerPoint 97-2003) फ़ाइलें समर्थित नहीं हैं।.
शैप्स में TextFrame प्रॉपर्टी नहीं होती है
कुछ आकार (Connector, PictureFrame) में कोई नहीं है TextFrame. कास्ट करें IAutoShape और टेक्स्ट तक पहुँचने से पहले null की जाँच करें।.
अक्सर पूछे जाने वाले प्रश्न
क्या लोड करने से सभी मूल सामग्री संरक्षित रहती है?
हां। अज्ञात XML भागों को राउंड‑ट्रिप सहेजने पर वैरबेटिम रूप से संरक्षित रखा जाता है। लाइब्रेरी किसी भी XML सामग्री को नहीं हटाएगी जिसे वह अभी तक पहचान नहीं पाती।.
क्या मैं पासवर्ड‑सुरक्षित PPTX लोड कर सकता हूँ?
पासवर्ड‑सुरक्षित (एन्क्रिप्टेड) प्रस्तुतियों को इस संस्करण में समर्थन नहीं दिया गया है।.
क्या मैं एम्बेडेड इमेजेज़ निकाल सकता हूँ?
छवियों के संग्रह तक पहुँचें: prs.Images वापस देता है ImageCollection. प्रत्येक छवि में कच्चा छवि डेटा पढ़ने के लिए गुण होते हैं।.
क्या MemoryStream से लोड करना समर्थित है?
हाँ। The Presentation कंस्ट्रक्टर स्वीकार करता है a Stream:
using var stream = new MemoryStream(pptxBytes);
using var prs = new Presentation(stream);
Console.WriteLine($"Slides: {prs.Slides.Count}");