जावा में प्रस्तुतियों को सहेजें
परिचय
जावा में प्रस्तुतियों को खोलें द्वारा बताया गया है कि कैसे Presentation क्लास का उपयोग करके प्रस्तुति को खोला जाता है। यह लेख बताता है कि कैसे प्रस्तुतियों को बनाया और सहेजा जा सकता है। Presentation क्लास में प्रस्तुति की सामग्री रहती है। चाहे आप नई प्रस्तुति बना रहे हों या मौजूदा को संशोधित कर रहे हों, काम समाप्त होने पर उसे सहेजना आवश्यक है। Aspose.Slides for Java के साथ आप फ़ाइल या स्ट्रीम में सहेज सकते हैं। यह लेख प्रस्तुति को सहेजने के विभिन्न तरीकों को समझाता है।
फ़ाइलों में प्रस्तुतियों को सहेजें
Presentation क्लास के save मेथड को कॉल करके प्रस्तुति को फ़ाइल में सहेजें। मेथड में फ़ाइल नाम और सहेजने का फ़ॉर्मेट पास करें। नीचे दिया गया उदाहरण दिखाता है कि कैसे Aspose.Slides का उपयोग करके प्रस्तुति को सहेजा जाता है।
// प्रस्तुति फ़ाइल का प्रतिनिधित्व करने वाली Presentation क्लास का उदाहरण बनाएँ।
Presentation presentation = new Presentation();
try {
// यहाँ कुछ काम करें...
// प्रस्तुति को फ़ाइल में सहेजें।
presentation.save("Output.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
स्ट्रीम में प्रस्तुतियों को सहेजें
आप आउटपुट स्ट्रीम को Presentation क्लास के save मेथड में पास करके प्रस्तुति को स्ट्रीम में सहेज सकते हैं। प्रस्तुति को कई प्रकार की स्ट्रीम में लिखा जा सकता है। नीचे के उदाहरण में हम नई प्रस्तुति बनाते हैं और उसे फ़ाइल स्ट्रीम में सहेजते हैं।
// प्रस्तुति फ़ाइल का प्रतिनिधित्व करने वाली Presentation क्लास का उदाहरण बनाएँ।
Presentation presentation = new Presentation();
try {
OutputStream fileStream = new FileOutputStream("Output.pptx");
try {
// प्रस्तुति को स्ट्रीम में सहेजें।
presentation.save(fileStream, SaveFormat.Pptx);
} finally {
fileStream.close();
}
} finally {
presentation.dispose();
}
प्रीडिफाइन्ड व्यू टाइप के साथ प्रस्तुतियों को सहेजें
Aspose.Slides आपको वह प्रारंभिक व्यू सेट करने देता है जो PowerPoint द्वारा जेनरेटेड प्रस्तुति खोलते समय उपयोग किया जाता है, यह ViewProperties क्लास के माध्यम से किया जाता है। ViewType एन्उमरेशन से मान लेकर setLastView मेथड का प्रयोग करें।
Presentation presentation = new Presentation();
try {
presentation.getViewProperties().setLastView(ViewType.SlideMasterView);
presentation.save("SlideMasterView.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
स्ट्रिक्ट ऑफिस ओपन XML फ़ॉर्मेट में प्रस्तुतियों को सहेजें
Aspose.Slides आपको प्रस्तुति को स्ट्रिक्ट ऑफिस ओपन XML फ़ॉर्मेट में सहेजने देता है। सहेजते समय PptxOptions क्लास का उपयोग करें और उसकी conformance प्रॉपर्टी सेट करें। यदि आप Conformance.Iso29500_2008_Strict सेट करते हैं, तो आउटपुट फ़ाइल स्ट्रिक्ट ऑफिस ओपन XML फ़ॉर्मेट में सहेजी जाती है।
नीचे दिया गया उदाहरण एक प्रस्तुति बनाता है और उसे स्ट्रिक्ट ऑफिस ओपन XML फ़ॉर्मेट में सहेजता है।
PptxOptions options = new PptxOptions();
options.setConformance(Conformance.Iso29500_2008_Strict);
// प्रस्तुति फ़ाइल का प्रतिनिधित्व करने वाली Presentation क्लास का उदाहरण बनाएँ।
Presentation presentation = new Presentation();
try {
// प्रस्तुति को स्ट्रिक्ट ऑफिस ओपन XML फ़ॉर्मेट में सहेजें।
presentation.save("StrictOfficeOpenXml.pptx", SaveFormat.Pptx, options);
} finally {
presentation.dispose();
}
Zip64 मोड में ऑफिस ओपन XML फ़ॉर्मेट में प्रस्तुतियों को सहेजें
एक ऑफिस ओपन XML फ़ाइल एक ZIP आर्काइव होती है जिसमें अनकम्प्रेस्ड फ़ाइल आकार, कम्प्रेस्ड फ़ाइल आकार और कुल आर्काइव आकार पर 4 GB (2^32 बाइट) की सीमा होती है, और यह आर्काइव अधिकतम 65 535 (2^16‑1) फ़ाइलों तक सीमित है। ZIP64 फ़ॉर्मेट एक्सटेंशन इन सीमाओं को 2^64 तक बढ़ा देते हैं।
IPptxOptions.setZip64Mode मेथड आपको Office Open XML फ़ाइल सहेजते समय ZIP64 फ़ॉर्मेट एक्सटेंशन का उपयोग कब करना है, चुनने की सुविधा देता है।
यह मेथड निम्नलिखित मोड्स के साथ उपयोग किया जा सकता है:
- IfNecessary केवल तब ZIP64 फ़ॉर्मेट एक्सटेंशन उपयोग करता है जब प्रस्तुति ऊपर दी गई सीमाओं से अधिक हो। यह डिफॉल्ट मोड है।
- Never कभी ZIP64 फ़ॉर्मेट एक्सटेंशन उपयोग नहीं करता।
- Always हमेशा ZIP64 फ़ॉर्मेट एक्सटेंशन उपयोग करता है।
नीचे दिया गया कोड दर्शाता है कि कैसे PPTX को ZIP64 फ़ॉर्मेट एक्सटेंशन सक्षम करके सहेजा जाए:
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setZip64Mode(Zip64Mode.Always);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("OutputZip64.pptx", SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
NOTE
जब आप Zip64Mode.Never के साथ सहेजते हैं, तो यदि प्रस्तुति ZIP32 फ़ॉर्मेट में सहेजी नहीं जा सकती तो एक PptxException उत्पन्न होता है।थंबनेल को रिफ्रेश किए बिना प्रस्तुतियों को सहेजें
PptxOptions.setRefreshThumbnail मेथड PPTX में प्रस्तुति सहेजते समय थंबनेल जेनरेशन को नियंत्रित करता है:
- यदि
trueसेट किया जाता है, तो सहेजने के दौरान थंबनेल रिफ्रेश होता है। यह डिफॉल्ट है। - यदि
falseसेट किया जाता है, तो वर्तमान थंबनेल बरकरार रहता है। यदि प्रस्तुति में थंबनेल नहीं है, तो नया थंबनेल नहीं बनाया जाता।
नीचे दिया गया कोड प्रस्तुति को PPTX में थंबनेल रिफ्रेश किए बिना सहेजता है।
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setRefreshThumbnail(false);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Output.pptx", SaveFormat.Pptx, pptxOptions);
}
finally {
presentation.dispose();
}
Info
यह विकल्प PPTX फ़ॉर्मेट में प्रस्तुति को सहेजने में लगने वाले समय को कम करने में मदद करता है।प्रगति अपडेट को प्रतिशत में सहेजें
IProgressCallback इंटरफ़ेस को ISaveOptions इंटरफ़ेस के setProgressCallback मेथड और एब्स्ट्रैक्ट SaveOptions क्लास के माध्यम से उपयोग किया जाता है। setProgressCallback के साथ एक IProgressCallback इम्प्लीमेंटेशन असाइन करके आप सहेजने की प्रगति अपडेट को प्रतिशत के रूप में प्राप्त कर सकते हैं।
नीचे दिया गया कोड स्निपेट दिखाता है कि IProgressCallback का उपयोग कैसे किया जाता है।
ISaveOptions saveOptions = new PdfOptions();
saveOptions.setProgressCallback(new ExportProgressHandler());
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Output.pdf", SaveFormat.Pdf, saveOptions);
} finally {
presentation.dispose();
}
class ExportProgressHandler implements IProgressCallback {
public void reporting(double progressValue) {
// यहाँ प्रोग्रेस प्रतिशत मान का उपयोग करें।
int progress = (int) progressValue;
System.out.println(progress + "% of the file has been converted.");
}
}
Info
Aspose ने अपना खुद का API उपयोग करके एक नि:शुल्क PowerPoint Splitter ऐप विकसित किया है। यह ऐप चयनित स्लाइड्स को नई PPTX या PPT फ़ाइलों के रूप में सहेज कर प्रस्तुति को कई फ़ाइलों में विभाजित करने की सुविधा देता है।अक्सर पूछे जाने वाले प्रश्न
क्या “फास्ट सेव” (इन्क्रिमेंटल सेव) समर्थित है ताकि केवल परिवर्तन ही लिखे जाएँ?
नहीं। सहेजना प्रत्येक बार पूरा टारगेट फ़ाइल बनाता है; इन्क्रिमेंटल “फास्ट सेव” समर्थित नहीं है।
क्या एक ही Presentation इंस्टेंस को कई थ्रेड्स से सहेजना थ्रेड-सेफ़ है?
नहीं। एक Presentation इंस्टेंस थ्रेड-सेफ़ नहीं है; इसे एक ही थ्रेड से सहेजें।
सहेजते समय हाइपरलिंक और बाहरी लिंक्ड फ़ाइलों का क्या होता है?
हाइपरलिंक बरकरार रहते हैं। बाहरी लिंक्ड फ़ाइलें (जैसे रिलेटिव पाथ वाले वीडियो) स्वतः कॉपी नहीं होतीं—सुनिश्चित करें कि संदर्भित पाथ उपलब्ध रहें।
क्या मैं दस्तावेज़ मेटाडाटा (लेखक, शीर्षक, कंपनी, तिथि) सेट/सहेज सकता हूँ?
हाँ। मानक डॉक्युमेंट प्रॉपर्टीज़ समर्थित हैं और सहेजने पर फ़ाइल में लिखी जाएँगी।