Αποθήκευση Παρουσιάσεων σε Android
Επισκόπηση
Ανοίξτε Παρουσιάσεις σε Android περιγράφει πώς να χρησιμοποιήσετε την κλάση Presentation για το άνοιγμα μιας παρουσίασης. Αυτό το άρθρο εξηγεί πώς να δημιουργήσετε και να αποθηκεύσετε παρουσιάσεις. Η κλάση Presentation περιέχει το περιεχόμενο μιας παρουσίασης. Είτε δημιουργείτε μια παρουσίαση από το μηδέν είτε τροποποιείτε μια υπάρχουσα, θα θέλετε να την αποθηκεύσετε όταν τελειώσετε. Με το Aspose.Slides για Android, μπορείτε να αποθηκεύσετε σε αρχείο ή ροή. Αυτό το άρθρο εξηγεί τις διαφορετικές μεθόδους αποθήκευσης μιας παρουσίασης.
Αποθήκευση Παρουσιάσεων σε Αρχεία
Αποθηκεύστε μια παρουσίαση σε αρχείο καλώντας τη μέθοδο save της κλάσης Presentation. Περνάτε το όνομα του αρχείου και τη μορφή αποθήκευσης στη μέθοδο. Το παρακάτω παράδειγμα δείχνει πώς να αποθηκεύσετε μια παρουσίαση με το Aspose.Slides.
import com.aspose.slides.*;
// Δημιουργήστε αντικείμενο της κλάσης Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης.
Presentation presentation = new Presentation();
try {
// Κάντε κάποια εργασία εδώ...
// Αποθηκεύστε την παρουσίαση σε αρχείο.
presentation.save("Output.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Αποθήκευση Παρουσιάσεων σε Ροές
Μπορείτε να αποθηκεύσετε μια παρουσίαση σε ροή περνώντας μια έξοδο ροής στη μέθοδο save της κλάσης Presentation. Μια παρουσίαση μπορεί να γραφτεί σε πολλούς τύπους ροών. Στο παρακάτω παράδειγμα, δημιουργούμε μια νέα παρουσίαση και την αποθηκεύουμε σε ροή αρχείου.
import com.aspose.slides.*;
import java.io.FileOutputStream;
import java.io.OutputStream;
// Δημιουργήστε αντικείμενο της κλάσης 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. Χρησιμοποιήστε τη μέθοδο setLastView με τιμή από την αξιολόγηση ViewType.
import com.aspose.slides.*;
Presentation presentation = new Presentation();
try {
presentation.getViewProperties().setLastView(ViewType.SlideMasterView);
presentation.save("SlideMasterView.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Αποθήκευση Παρουσιάσεων στη Συνεπή Μορφή Office Open XML
Το Aspose.Slides σας επιτρέπει να αποθηκεύσετε μια παρουσίαση στη Συνεπή μορφή Office Open XML. Χρησιμοποιήστε την κλάση PptxOptions και ορίστε την ιδιότητα conformance κατά την αποθήκευση. Εάν ορίσετε το Conformance.Iso29500_2008_Strict, το αρχείο εξόδου αποθηκεύεται στη Συνεπή μορφή Office Open XML.
Το παρακάτω παράδειγμα δημιουργεί μια παρουσίαση και την αποθηκεύει στη Συνεπή μορφή Office Open XML.
import com.aspose.slides.*;
PptxOptions options = new PptxOptions();
options.setConformance(Conformance.Iso29500_2008_Strict);
// Δημιουργήστε αντικείμενο της κλάσης Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης.
Presentation presentation = new Presentation();
try {
// Αποθηκεύστε την παρουσίαση στη Συνεπή μορφή Office Open XML.
presentation.save("StrictOfficeOpenXml.pptx", SaveFormat.Pptx, options);
} finally {
presentation.dispose();
}
Αποθήκευση Παρουσιάσεων σε Μορφή Office Open XML σε Λειτουργία Zip64
Ένα αρχείο Office Open XML είναι ένα αρχείο ZIP που επιβάλλει όρια 4 GB (2^32 bytes) στο μη συμπιεσμένο μέγεθος οποιουδήποτε αρχείου, στο συμπιεσμένο μέγεθος οποιουδήποτε αρχείου και στο συνολικό μέγεθος του αρχείου, ενώ επίσης περιορίζει το αρχείο σε 65 535 (2^16‑1) αρχεία. Οι επεκτάσεις μορφής ZIP64 αυξάνουν αυτά τα όρια σε 2^64.
Η μέθοδος IPptxOptions.setZip64Mode σας επιτρέπει να επιλέξετε πότε να χρησιμοποιήσετε τις επεκτάσεις μορφής ZIP64 κατά την αποθήκευση ενός αρχείου Office Open XML.
Αυτή η μέθοδος μπορεί να χρησιμοποιηθεί με τις ακόλουθες λειτουργίες:
- IfNecessary χρησιμοποιεί τις επεκτάσεις μορφής ZIP64 μόνο εάν η παρουσίαση υπερβαίνει τα παραπάνω όρια. Αυτή είναι η προεπιλεγμένη λειτουργία.
- Never δεν χρησιμοποιεί ποτέ επεκτάσεις μορφής ZIP64.
- Always χρησιμοποιεί πάντα επεκτάσεις μορφής ZIP64.
Ο παρακάτω κώδικας δείχνει πώς να αποθηκεύσετε μια παρουσίαση ως αρχείο PPTX με ενεργοποιημένες τις επεκτάσεις μορφής ZIP64:
import com.aspose.slides.*;
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, πετιέται μια PptxException εάν η παρουσίαση δεν μπορεί να αποθηκευτεί σε μορφή ZIP32.Αποθήκευση Παρουσιάσεων σε Μορφή Office Open XML με Επίπεδα Συμπίεσης
Όταν εργάζεστε με μεγάλες παρουσιάσεις, μπορείτε να ρυθμίσετε το επίπεδο συμπίεσης ώστε να ισορροπήσετε το μέγεθος του αρχείου και το χρόνο επεξεργασίας. Ανάλογα με τις απαιτήσεις σας, μπορεί να προτιμάτε πιο γρήγορη επεξεργασία ή μικρότερα αρχεία εξόδου.
Το Aspose.Slides παρέχει τη μέθοδο IPptxOptions.setCompressionLevel, η οποία επιτρέπει τον καθορισμό του επιπέδου συμπίεσης που χρησιμοποιείται κατά την αποθήκευση μιας παρουσίασης σε μορφή Office Open XML.
Τα εξής επίπεδα συμπίεσης είναι διαθέσιμα:
- None: Δεν εφαρμόζεται συμπίεση. Τα αρχεία αποθηκεύονται όπως είναι.
- Level1: Η πιο γρήγορη συμπίεση με το χαμηλότερο λόγο συμπίεσης.
- Level2: Ταχύτερη συμπίεση με ελαφρώς καλύτερο λόγο από το Level1.
- Level3: Παρέχει καλύτερη συμπίεση από το Level2 με μέτρια επίδραση στον χρόνο επεξεργασίας.
- Level4: Παρέχει καλύτερη συμπίεση από το Level3.
- Level5: Βελτιωμένη συμπίεση σε σχέση με το Level4 με επιπλέον χρόνο επεξεργασίας.
- Level6: Κανονική συμπίεση που προσφέρει καλή ισορροπία μεταξύ ταχύτητας επεξεργασίας και μεγέθους αρχείου. Αυτό είναι το προεπιλεγμένο επίπεδο συμπίεσης.
- Level7: Καλύτερη συμπίεση από το Level6 με πιο αργή επεξεργασία.
- Level8: Καλύτερη συμπίεση από το Level7.
- Level9: Μέγιστη συμπίεση. Παράγει το μικρότερο μέγεθος αρχείου με το μεγαλύτερο κόστος χρόνου επεξεργασίας.
Το παρακάτω παράδειγμα δείχνει πώς να αποθηκεύσετε μια παρουσίαση ως αρχείο PPTX χωρίς συμπίεση:
import com.aspose.slides.*;
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setCompressionLevel(CompressionLevel.None);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Sample-out.pptx", SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
Αυτό το παράδειγμα δείχνει πώς να αποθηκεύσετε μια παρουσίαση ως αρχείο PPTX με μέγιστη συμπίεση:
import com.aspose.slides.*;
PptxOptions pptxOptions = new PptxOptions();
pptxOptions.setCompressionLevel(CompressionLevel.Level9);
Presentation presentation = new Presentation("Sample.pptx");
try {
presentation.save("Sample-level9.pptx", SaveFormat.Pptx, pptxOptions);
} finally {
presentation.dispose();
}
Αποθήκευση Παρουσιάσεων χωρίς Ανανέωση Μικρογραφίας
Η μέθοδος PptxOptions.setRefreshThumbnail ελέγχει τη δημιουργία μικρογραφίας κατά την αποθήκευση μιας παρουσίασης σε PPTX:
- Εάν οριστεί σε
true, η μικρογραφία ανανεώνεται κατά την αποθήκευση. Αυτό είναι το προεπιλεγμένο. - Εάν οριστεί σε
false, διατηρείται η τρέχουσα μικρογραφία. Εάν η παρουσίαση δεν έχει μικρογραφία, δεν δημιουργείται καμία.
Στον παρακάτω κώδικα, η παρουσίαση αποθηκεύεται σε PPTX χωρίς να ανανεωθεί η μικρογραφία της.
import com.aspose.slides.*;
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 χρησιμοποιείται μέσω της μεθόδου setProgressCallback που εκτίθεται από τη διεπαφή ISaveOptions και την αφηρημένη κλάση SaveOptions. Αναθέστε μια υλοποίηση του IProgressCallback με setProgressCallback για να λαμβάνετε ενημερώσεις προόδου αποθήκευσης ως ποσοστό.
Τα παρακάτω αποσπάσματα κώδικα δείχνουν πώς να χρησιμοποιήσετε το IProgressCallback.
import com.aspose.slides.*;
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();
}
import com.aspose.slides.*;
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 έχει αναπτύξει μια δωρεάν εφαρμογή PowerPoint Splitter χρησιμοποιώντας το δικό της API. Η εφαρμογή σας επιτρέπει να χωρίσετε μια παρουσίαση σε πολλαπλά αρχεία αποθηκεύοντας τις επιλεγμένες διαφάνειες ως νέα αρχεία PPTX ή PPT.Συχνές Ερωτήσεις
Υποστηρίζεται η «γρήγορη αποθήκευση» (αυξητική αποθήκευση) ώστε να γράφονται μόνο οι αλλαγές;
Όχι. Η αποθήκευση δημιουργεί το πλήρες αρχείο προορισμού κάθε φορά· η αυξητική «γρήγορη αποθήκευση» δεν υποστηρίζεται.
Είναι ασφαλές (thread‑safe) να αποθηκεύετε το ίδιο αντικείμενο Presentation από πολλές νήματα;
Όχι. Ένα αντικείμενο Presentation δεν είναι thread‑safe· αποθηκεύστε το από ένα μόνο νήμα.
Τι γίνεται με τους υπερσυνδέσμους και τα εξωτερικά συνδεδεμένα αρχεία κατά την αποθήκευση;
Τα Hyperlinks διατηρούνται. Τα εξωτερικά συνδεδεμένα αρχεία (π.χ. βίντεο μέσω σχετικών διαδρομών) δεν αντιγράφονται αυτόματα· βεβαιωθείτε ότι οι αναφερόμενες διαδρομές παραμένουν προσβάσιμες.
Μπορώ να ορίσω/αποθηκεύσω μεταδεδομένα εγγράφου (Συγγραφέας, Τίτλος, Εταιρεία, Ημερομηνία);
Ναι. Οι τυπικές ιδιότητες εγγράφου υποστηρίζονται και θα γραφτούν στο αρχείο κατά την αποθήκευση.