Διαχείριση Ιδιοτήτων Παρουσίασης σε Android
Εισαγωγή
Το Aspose.Slides υποστηρίζει δύο τύπους ιδιοτήτων εγγράφου: Built‑in και Custom. Και οι δύο τύποι ιδιοτήτων μπορούν εύκολα να προσπελαστούν και να διαχειριστούν χρησιμοποιώντας το API του Aspose.Slides.
Το Aspose.Slides σας επιτρέπει να εργάζεστε με τις ιδιότητες εγγράφου παρουσίασης μέσω της διεπαφής IDocumentProperties . Μία παρουσία της διεπαφής αυτής επιστρέφεται από τη μέθοδο Presentation.getDocumentProperties . Τα παρακάτω παραδείγματα δείχνουν πώς να διαβάσετε, να τροποποιήσετε και να διαχειριστείτε αυτές τις ιδιότητες.
Ιδιότητες Εγγράφου στο PowerPoint
Το Microsoft PowerPoint 2007 επιτρέπει τη διαχείριση των ιδιοτήτων εγγράφου των αρχείων παρουσίασης. Το μόνο που χρειάζεται να κάνετε είναι να κάνετε κλικ στο εικονίδιο του Office και στη συνέχεια στο μενού Prepare | Properties | Advanced Properties του Microsoft PowerPoint 2007 όπως φαίνεται παρακάτω:
| Επιλογή στοιχείου μενού Advanced Properties | ** |
|---|---|
![]() |
Αφού επιλέξετε το στοιχείο μενού Advanced Properties, θα εμφανιστεί ένας διάλογος που σας επιτρέπει να διαχειριστείτε τις ιδιότητες εγγράφου του αρχείου PowerPoint, όπως φαίνεται παρακάτω στο σχήμα:
| Διάλογος Ιδιοτήτων | ** |
|---|---|
![]() |
Στον παραπάνω Properties Dialog, μπορείτε να δείτε ότι υπάρχουν πολλές καρτέλες όπως General, Summary, Statistics, Contents και Custom. Όλες αυτές οι καρτέλες επιτρέπουν τη διαμόρφωση διαφόρων τύπων πληροφοριών σχετικών με τα αρχεία PowerPoint. Η καρτέλα Custom χρησιμοποιείται για τη διαχείριση των προσαρμοσμένων ιδιοτήτων των αρχείων PowerPoint.
Εργασία με Ιδιότητες Εγγράφου χρησιμοποιώντας το Aspose.Slides for Android via Java
Όπως περιγράψαμε νωρίτερα, το Aspose.Slides for Android via Java υποστηρίζει δύο είδη ιδιοτήτων εγγράφου, που είναι οι ιδιότητες Built‑in και Custom. Έτσι, οι προγραμματιστές μπορούν να έχουν πρόσβαση και στα δύο είδη ιδιοτήτων χρησιμοποιώντας το API του Aspose.Slides for Android via Java. Το Aspose.Slides for Android via Java παρέχει μια κλάση IDocumentProperties που αντιπροσωπεύει τις ιδιότητες εγγράφου που σχετίζονται με ένα αρχείο παρουσίασης μέσω της ιδιότητας Presentation.DocumentProperties.
Οι προγραμματιστές μπορούν να χρησιμοποιήσουν την ιδιότητα IDocumentProperties που εκτίθεται από το αντικείμενο Presentation για να έχουν πρόσβαση στις ιδιότητες εγγράφου των αρχείων παρουσίασης όπως περιγράφεται παρακάτω:
Πρόσβαση σε Ενσωματωμένες Ιδιότητες
Αυτές οι ιδιότητες, όπως εκτίθενται από το αντικείμενο IDocumentProperties , περιλαμβάνουν: Creator (Συγγραφέας), Description, Keywords, Created (Ημερομηνία Δημιουργίας), Modified (Ημερομηνία Τροποποίησης), Printed (Ημερομηνία Τελευταίου Εκτύπωσης), LastModifiedBy, Keywords, SharedDoc (Κοινοποιείται μεταξύ διαφορετικών δημιουργών;), PresentationFormat, Subject και Title.
// Δημιουργία της κλάσης Presentation που αντιπροσωπεύει την παρουσίαση
Presentation pres = new Presentation("Presentation.pptx");
try {
// Δημιουργία αναφοράς στο αντικείμενο IDocumentProperties που σχετίζεται με την Presentation
IDocumentProperties dp = pres.getDocumentProperties();
// Εμφάνιση των ενσωματωμένων ιδιοτήτων
System.out.println("Category : " + dp.getCategory());
System.out.println("Current Status : " + dp.getContentStatus());
System.out.println("Creation Date : " + dp.getCreatedTime());
System.out.println("Author : " + dp.getAuthor());
System.out.println("Description : " + dp.getComments());
System.out.println("KeyWords : " + dp.getKeywords());
System.out.println("Last Modified By : " + dp.getLastSavedBy());
System.out.println("Supervisor : " + dp.getManager());
System.out.println("Modified Date : " + dp.getLastSavedTime());
System.out.println("Presentation Format : " + dp.getPresentationFormat());
System.out.println("Last Print Date : " + dp.getLastPrinted());
System.out.println("Is Shared between producers : " + dp.getSharedDoc());
System.out.println("Subject : " + dp.getSubject());
System.out.println("Title : " + dp.getTitle());
} finally {
if (pres != null) pres.dispose();
}
Τροποποίηση Ενσωματωμένων Ιδιοτήτων
Η τροποποίηση των ενσωματωμένων ιδιοτήτων των αρχείων παρουσίασης είναι εξίσου εύκολη με την πρόσβαση σε αυτές. Μπορείτε απλά να εκχωρήσετε μια συμβολοσειρά σε οποιαδήποτε επιθυμητή ιδιότητα και η τιμή της ιδιότητας θα τροποποιηθεί. Στο παρακάτω παράδειγμα, δείξαμε πώς μπορούμε να τροποποιήσουμε τις ενσωματωμένες ιδιότητες εγγράφου του αρχείου παρουσίασης χρησιμοποιώντας το Aspose.Slides for Android via Java.
Presentation pres = new Presentation("Presentation.pptx");
try {
// Δημιουργία αναφοράς στο αντικείμενο IDocumentProperties που σχετίζεται με την Presentation
IDocumentProperties dp = pres.getDocumentProperties();
// Ορισμός των ενσωματωμένων ιδιοτήτων
dp.setAuthor("Aspose.Slides for Android via Java");
dp.setTitle("Modifying Presentation Properties");
dp.setSubject("Aspose Subject");
dp.setComments("Aspose Description");
dp.setManager("Aspose Manager");
// Αποθήκευση της παρουσίασης σε αρχείο
pres.save("DocProps.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Αυτό το παράδειγμα τροποποιεί τις ενσωματωμένες ιδιότητες της παρουσίασης, όπως φαίνεται παρακάτω:
| Ενσωματωμένες ιδιότητες εγγράφου μετά τη τροποποίηση | ** |
|---|---|
![]() |
Προσθήκη Προσαρμοσμένων Ιδιοτήτων Εγγράφου
Το Aspose.Slides for Android via Java επιτρέπει επίσης στους προγραμματιστές να προσθέτουν προσαρμοσμένες τιμές για τις ιδιότητες εγγράφου παρουσίασης. Ένα παράδειγμα παρατίθεται παρακάτω που δείχνει πώς να ορίσετε τις προσαρμοσμένες ιδιότητες για μια παρουσίαση.
Presentation pres = new Presentation();
try {
// Λήψη Ιδιοτήτων Εγγράφου
IDocumentProperties dProps = pres.getDocumentProperties();
// Προσθήκη Προσαρμοσμένων ιδιοτήτων
dProps.set_Item("New Custom", 12);
dProps.set_Item("My Name", "Mudassir");
dProps.set_Item("Custom", 124);
// Λήψη ονόματος ιδιότητας σε συγκεκριμένο δείκτη
String getPropertyName = dProps.getCustomPropertyName(2);
// Αφαίρεση επιλεγμένης ιδιότητας
dProps.removeCustomProperty(getPropertyName);
// Αποθήκευση παρουσίασης
pres.save("CustomDemo.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
| Προστέθηκαν Προσαρμοσμένες Ιδιότητες Εγγράφου | ** |
|---|---|
![]() |
Πρόσβαση και Τροποποίηση Προσαρμοσμένων Ιδιοτήτων
Το Aspose.Slides for Android via Java επιτρέπει επίσης στους προγραμματιστές να έχουν πρόσβαση στις τιμές των προσαρμοσμένων ιδιοτήτων. Ένα παράδειγμα παρατίθεται παρακάτω που δείχνει πώς μπορείτε να έχετε πρόσβαση και να τροποποιήσετε όλες αυτές τις προσαρμοσμένες ιδιότητες για μια παρουσίαση.
Presentation pres = new Presentation("Presentation.pptx");
try {
// Δημιουργία αναφοράς στο αντικείμενο DocumentProperties που συνδέεται με την Presentation
IDocumentProperties dp = pres.getDocumentProperties();
// Πρόσβαση και τροποποίηση προσαρμοσμένων ιδιοτήτων
for (int i = 0; i < dp.getCountOfCustomProperties(); i++) {
// Εμφάνιση ονομάτων και τιμών των προσαρμοσμένων ιδιοτήτων
System.out.println("Custom Property Name : " + dp.getCustomPropertyName(i));
System.out.println("Custom Property Value : " + dp.get_Item(dp.getCustomPropertyName(i)));
// Τροποποίηση τιμών των προσαρμοσμένων ιδιοτήτων
dp.set_Item(dp.getCustomPropertyName(i), "New Value " + (i + 1));
}
// Αποθήκευση της παρουσίασής σας σε αρχείο
pres.save("CustomDemoModified.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Αυτό το παράδειγμα τροποποιεί τις πρόσαρμοσμένες ιδιότητες της παρουσίασης PPTX . Τα παρακάτω σχήματα δείχνουν τις προσαρμοσμένες ιδιότητες της παρουσίασης πριν και μετά την τροποποίηση:
| Προσαρμοσμένες Ιδιότητες πριν τη Τροποποίηση | ** |
|---|---|
![]() |
| Προσαρμοσμένες Ιδιότητες μετά τη Τροποποίηση | ** |
|---|---|
![]() |
Προηγμένες Ιδιότητες Εγγράφου
Οι δύο νέες μέθοδοι ReadDocumentProperties και UpdateDocumentProperties έχουν προστεθεί στην διεπαφή IPresentationInfo . Παρέχουν γρήγορη πρόσβαση στις ιδιότητες εγγράφου και επιτρέπουν την αλλαγή και ενημέρωση των ιδιοτήτων χωρίς να φορτωθεί ολόκληρη η παρουσίαση.
Το τυπικό σενάριο φόρτωσης των ιδιοτήτων, τροποποίησης κάποιας τιμής και ενημέρωσης του εγγράφου μπορεί να υλοποιηθεί με τον παρακάτω τρόπο:
// ανάγνωση πληροφοριών παρουσίασης
IPresentationInfo info = PresentationFactory.getInstance().getPresentationInfo("presentation.pptx");
// λήψη τρεχουσών ιδιοτήτων
IDocumentProperties props = info.readDocumentProperties();
// ορισμός νέων τιμών για τα πεδία Συγγραφέας και Τίτλος
props.setAuthor("New Author");
props.setTitle("New Title");
// ενημέρωση της παρουσίασης με νέες τιμές
info.updateDocumentProperties(props);
info.writeBindedPresentation("presentation.pptx");
Υπάρχει ένας άλλος τρόπος χρήσης των ιδιοτήτων μιας συγκεκριμένης παρουσίασης ως πρότυπο για την ενημέρωση ιδιοτήτων σε άλλες παρουσιάσεις:
IPresentationInfo info = PresentationFactory.getInstance().getPresentationInfo("template.pptx");
DocumentProperties template = (DocumentProperties) info.readDocumentProperties();
template.setAuthor("Template Author");
template.setTitle("Template Title");
template.setCategory("Template Category");
template.setKeywords("Keyword1, Keyword2, Keyword3");
template.setCompany("Our Company");
template.setComments("Created from template");
template.setContentType("Template Content");
template.setSubject("Template Subject");
updateByTemplate("doc1.pptx", template);
updateByTemplate("doc2.odp", template);
updateByTemplate("doc3.ppt", template);
private static void updateByTemplate(String path, IDocumentProperties template)
{
IPresentationInfo toUpdate = PresentationFactory.getInstance().getPresentationInfo(path);
toUpdate.updateDocumentProperties(template);
toUpdate.writeBindedPresentation(path);
}
Ένα νέο πρότυπο μπορεί να δημιουργηθεί από το μηδέν και στη συνέχεια να χρησιμοποιηθεί για την ενημέρωση πολλαπλών παρουσιάσεων:
DocumentProperties template = new DocumentProperties();\
template.setAuthor("Template Author");
template.setTitle("Template Title");
template.setCategory("Template Category");
template.setKeywords("Keyword1, Keyword2, Keyword3");
template.setCompany("Our Company");
template.setComments("Created from template");
template.setContentType("Template Content");
template.setSubject("Template Subject");
updateByTemplate("doc1.pptx", template);
updateByTemplate("doc2.odp", template);
updateByTemplate("doc3.ppt", template);
private static void updateByTemplate(String path, IDocumentProperties template)
{
IPresentationInfo toUpdate = PresentationFactory.getInstance().getPresentationInfo(path);
toUpdate.updateDocumentProperties(template);
toUpdate.writeBindedPresentation(path);
}
Ορισμός Γλώσσας Διόρθωσης
Το Aspose.Slides παρέχει την ιδιότητα LanguageId (εκτεθειμένη από την κλάση PortionFormat) για να σας επιτρέπει να ορίσετε τη γλώσσα διόρθωσης για ένα έγγραφο PowerPoint. Η γλώσσα διόρθωσης είναι η γλώσσα για την οποία ελέγχονται η ορθογραφία και η γραμματική στο PowerPoint.
Αυτός ο κώδικας Java δείχνει πώς να ορίσετε τη γλώσσα διόρθωσης για ένα PowerPoint: xxx Γιατί λείπει η LanguageId από την κλάση Java PortionFormat;
Presentation pres = new Presentation(pptxFileName);
try {
AutoShape autoShape = (AutoShape)pres.getSlides().get_Item(0).getShapes().get_Item(0);
IParagraph paragraph = autoShape.getTextFrame().getParagraphs().get_Item(0);
paragraph.getPortions().clear();
Portion newPortion = new Portion();
IFontData font = new FontData("SimSun");
IPortionFormat portionFormat = newPortion.getPortionFormat();
portionFormat.setComplexScriptFont(font);
portionFormat.setEastAsianFont(font);
portionFormat.setLatinFont(font);
portionFormat.setLanguageId("zh-CN"); // ορισμός του Id μιας γλώσσας διόρθωσης
newPortion.setText("1。");
paragraph.getPortions().add(newPortion);
} finally {
if (pres != null) pres.dispose();
}
Ορισμός Προεπιλεγμένης Γλώσσας
Αυτός ο κώδικας Java δείχνει πώς να ορίσετε τη προεπιλεγμένη γλώσσα για ολόκληρη την παρουσίαση PowerPoint:
LoadOptions loadOptions = new LoadOptions();
loadOptions.setDefaultTextLanguage("en-US");
Presentation pres = new Presentation(loadOptions);
try {
// Προσθέτει ένα νέο σχήμα ορθογωνίου με κείμενο
IAutoShape shp = pres.getSlides().get_Item(0).getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 150, 50);
shp.getTextFrame().setText("New Text");
// Ελέγχει τη γλώσσα του πρώτου τμήματος
System.out.println(shp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getLanguageId());
} finally {
if (pres != null) pres.dispose();
}
Ζωντανό Παράδειγμα
Δοκιμάστε την online εφαρμογή Aspose.Slides Metadata για να δείτε πώς να εργάζεστε με ιδιότητες εγγράφου μέσω του API του Aspose.Slides:
*FAQ
Πώς μπορώ να αφαιρέσω μια ενσωματωμένη ιδιότητα από μια παρουσίαση;
Οι ενσωματωμένες ιδιότητες αποτελούν αναπόσπαστο μέρος της παρουσίασης και δεν μπορούν να αφαιρεθούν πλήρως. Ωστόσο, μπορείτε είτε να αλλάξετε τις τιμές τους είτε να τις θέσετε κενές, αν η συγκεκριμένη ιδιότητα το επιτρέπει.
Τι συμβαίνει αν προσθέσω μια προσαρμοσμένη ιδιότητα που υπάρχει ήδη;
Αν προσθέσετε μια προσαρμοσμένη ιδιότητα που υπάρχει ήδη, η υπάρχουσα τιμή της θα αντικατασταθεί με τη νέα. Δεν χρειάζεται να αφαιρέσετε ή να ελέγξετε την ιδιότητα εκ των προτέρων, καθώς το Aspose.Slides ενημερώνει αυτόματα την τιμή της ιδιότητας.
Μπορώ να έχω πρόσβαση στις ιδιότητες της παρουσίασης χωρίς να φορτωθεί πλήρως η παρουσίαση;
Ναι, μπορείτε να έχετε πρόσβαση στις ιδιότητες της παρουσίασης χωρίς να φορτωθεί πλήρως η παρουσίαση χρησιμοποιώντας τη μέθοδο getPresentationInfo από την κλάση PresentationFactory . Στη συνέχεια, χρησιμοποιήστε τη μέθοδο readDocumentProperties που παρέχεται από τη διεπαφή IPresentationInfo για να διαβάσετε τις ιδιότητες αποδοτικά, εξοικονομώντας μνήμη και βελτιώνοντας την απόδοση.






