Πρόσβαση στις διαφάνειες παρουσίασης σε Python
Επισκόπηση
Αυτό το άρθρο εξηγεί πώς να προσπελάσετε και να διαχειριστείτε διαφάνειες σε μια παρουσίαση χρησιμοποιώντας το Aspose.Slides. Δείχνει πώς να ανακτήσετε διαφάνειες με βάση τον μηδενικό δείκτη τους από τη συλλογή διαφανειών και πώς να προσπελάσετε μια διαφάνεια με το μοναδικό της ID χρησιμοποιώντας τη μέθοδο getSlideById.
Θα μάθετε επίσης πώς να αλλάξετε τη θέση μιας διαφάνειας χρησιμοποιώντας τη μέθοδο setSlideNumber και πώς να ορίσετε τον αρχικό αριθμό διαφανειών για μια παρουσίαση με τη μέθοδο setFirstSlideNumber. Τα παραδείγματα δείχνουν τη φόρτωση μιας παρουσίασης, την απόκτηση αναφορών διαφανειών, την ενημέρωση της σειράς ή της αρίθμησης των διαφανειών, και την αποθήκευση της τροποποιημένης παρουσίασης.
Πρόσβαση σε διαφάνεια κατά δείκτη
Όλες οι διαφάνειες σε μια παρουσίαση είναι διατεταγμένες αριθμητικά με βάση τη θέση της διαφάνειας, αρχίζοντας από το 0. Η πρώτη διαφάνεια είναι προσβάσιμη μέσω του δείκτη 0· η δεύτερη διαφάνεια μέσω του δείκτη 1· κ.λπ.
Η κλάση Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης, εκθέτει όλες τις διαφάνειες ως μια συλλογή SlideCollection (συλλογή αντικειμένων Slide). Αυτός ο κώδικας Python δείχνει πώς να προσπελάσετε μια διαφάνεια μέσω του δείκτη της:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation
# Δημιουργήστε ένα αντικείμενο Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης.
presentation = Presentation("demo.pptx")
try:
# Προσπελάστε μια διαφάνεια χρησιμοποιώντας το δείκτη της.
slide = presentation.getSlides().get_Item(0)
finally:
presentation.dispose()
Πρόσβαση σε διαφάνεια κατά ID
Κάθε διαφάνεια σε μια παρουσίαση έχει ένα μοναδικό ID σχετικό με αυτήν. Μπορείτε να χρησιμοποιήσετε τη μέθοδο getSlideById (που εκτίθεται από την κλάση Presentation) για να στοχεύσετε αυτό το ID. Αυτός ο κώδικας Python δείχνει πώς να δώσετε ένα έγκυρο ID διαφάνειας και να προσπελάσετε τη διαφάνεια μέσω της μεθόδου getSlideById:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation
# Δημιουργήστε ένα αντικείμενο Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης.
presentation = Presentation("demo.pptx")
try:
# Λάβετε ένα ID διαφάνειας.
slide_id = presentation.getSlides().get_Item(0).getSlideId()
# Προσπελάστε τη διαφάνεια μέσω του ID της.
slide = presentation.getSlideById(slide_id)
finally:
presentation.dispose()
Αλλαγή θέσης διαφάνειας
Το Aspose.Slides σας επιτρέπει να αλλάξετε τη θέση μιας διαφάνειας. Για παράδειγμα, μπορείτε να καθορίσετε ότι η πρώτη διαφάνεια πρέπει να γίνει η δεύτερη διαφάνεια.
- Δημιουργήστε μια παρουσία της κλάσης Presentation.
- Αποκτήστε την αναφορά της διαφάνειας (της οποίας θέλετε να αλλάξετε τη θέση) μέσω του δείκτη της.
- Ορίστε μια νέα θέση για τη διαφάνεια χρησιμοποιώντας τη μέθοδο setSlideNumber.
- Αποθηκεύστε την τροποποιημένη παρουσίαση.
Αυτός ο κώδικας Python επιδεικνύει μια λειτουργία στην οποία η διαφάνεια στη θέση 1 μετακινείται στη θέση 2:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat
# Δημιουργήστε ένα αντικείμενο Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης.
presentation = Presentation("Presentation.pptx")
try:
# Λάβετε τη διαφάνεια της οποίας θα αλλάξει η θέση.
slide = presentation.getSlides().get_Item(0)
# Ορίστε τη νέα θέση για τη διαφάνεια.
slide.setSlideNumber(2)
# Αποθηκεύστε την τροποποιημένη παρουσίαση.
presentation.save("helloworld_Pos.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Η πρώτη διαφάνεια έγινε η δεύτερη· η δεύτερη διαφάνεια έγινε η πρώτη. Όταν αλλάζετε τη θέση μιας διαφάνειας, οι άλλες διαφάνειες προσαρμόζονται αυτόματα.
Ορισμός αριθμού διαφάνειας
Χρησιμοποιώντας τη μέθοδο setFirstSlideNumber (που εκτίθεται από την κλάση Presentation), μπορείτε να ορίσετε έναν νέο αριθμό για την πρώτη διαφάνεια σε μια παρουσίαση. Αυτή η λειτουργία προκαλεί τον επανυπολογισμό των αριθμών των άλλων διαφανειών.
- Δημιουργήστε μια παρουσία της κλάσης Presentation.
- Αποκτήστε τον αριθμό της διαφάνειας.
- Ορίστε τον αριθμό της διαφάνειας.
- Αποθηκεύστε την τροποποιημένη παρουσίαση.
Αυτός ο κώδικας Python επιδεικνύει μια λειτουργία όπου ο αριθμός της πρώτης διαφάνειας ορίζεται σε 10:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat
# Δημιουργήστε ένα αντικείμενο Presentation που αντιπροσωπεύει ένα αρχείο παρουσίασης.
presentation = Presentation("HelloWorld.pptx")
try:
# Λάβετε τον αριθμό της διαφάνειας.
first_slide_number = presentation.getFirstSlideNumber()
# Ορίστε τον αριθμό της διαφάνειας.
presentation.setFirstSlideNumber(10)
# Αποθηκεύστε την τροποποιημένη παρουσίαση.
presentation.save("Set_Slide_Number_out.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Αν προτιμάτε να παραλείψετε την πρώτη διαφάνεια, μπορείτε να ξεκινήσετε την αρίθμηση από τη δεύτερη διαφάνεια (και να κρύψετε την αρίθμηση για την πρώτη διαφάνεια) με τον εξής τρόπο:
import jpype
import asposeslides
if not jpame.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, SlideLayoutType
presentation = Presentation()
try:
layout_slide = presentation.getLayoutSlides().getByType(SlideLayoutType.Blank)
presentation.getSlides().addEmptySlide(layout_slide)
presentation.getSlides().addEmptySlide(layout_slide)
presentation.getSlides().addEmptySlide(layout_slide)
# Ορίστε τον αριθμό για την πρώτη διαφάνεια της παρουσίασης.
presentation.setFirstSlideNumber(0)
# Εμφανίστε τους αριθμούς διαφανειών για όλες τις διαφάνειες.
presentation.getHeaderFooterManager().setAllSlideNumbersVisibility(True)
# Αποκρύψτε τον αριθμό διαφάνειας για την πρώτη διαφάνεια.
presentation.getSlides().get_Item(0).getHeaderFooterManager().setSlideNumberVisibility(False)
# Αποθηκεύστε την τροποποιημένη παρουσίαση.
presentation.save("output.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
Συχνές ερωτήσεις
Ο αριθμός της διαφάνειας που βλέπει ο χρήστης ταιριάζει με τον μηδενικό δείκτη της συλλογής;
Ο αριθμός που εμφανίζεται σε μια διαφάνεια μπορεί να αρχίζει από μια αυθαίρετη τιμή (π.χ., 10) και δεν χρειάζεται να ταιριάζει με το δείκτη· η σχέση ελέγχεται από τη ρύθμιση first slide number της παρουσίασης.
Επηρεάζουν οι κρυμμένες διαφάνειες την αρίθμηση;
Ναι. Μία κρυμμένη διαφάνεια παραμένει στη συλλογή και υπολογίζεται στην αρίθμηση· το «κρυφό» αναφέρεται στην εμφάνιση, όχι στη θέση της στη συλλογή.
Αλλάζει ο δείκτης μιας διαφάνειας όταν προστίθενται ή αφαιρούνται άλλες διαφάνειες;
Ναι. Οι δείκτες πάντα αντανακλούν την τρέχουσα σειρά των διαφανειών και επαναϋπολογίζονται κατά τις λειτουργίες εισαγωγής, διαγραφής και μετακίνησης.