Εισαγωγή

Αυτό το εγχειρίδιο δείχνει πώς να δημιουργήσετε, να τροποποιήσουν και να αποθηκεύσει PowerPoint παρουσιάσεις προγραμματικά στο Python χρησιμοποιώντας Aspose.Slides FOSS. Η βιβλιοθήκη σας επιτρέπει να χτίζετε σκιές από κενά, προσθέστε και επαναπροσδιορίστε σινάρια, κατοικεί με σχήματα, πίνακες και μορφοποιημένο κείμενο, και απομακρύνουν το αποτέλεσμα σε PPTX. Όλες οι επεξεργασίες συμβαίνουν στην καθαρή Python χωρίς εξάρτηση από το Microsoft Office ή οποιοδήποτε εξωτερικό δυαδικό.

Η βιβλιοθήκη είναι διαθέσιμη στο PyPI ως aspose-slides-foss Υπό την άδεια του MIT.Install Με το με pip, εισάγετε το, και ξεκινήστε την κατασκευή των παρουσιάσεων σε μερικές γραμμές κώδικα. αυτοματοποιείτε την παραγωγή αναφορών, χτίζετε ένα σωλήνα δάπεδο ή ενσωματώνετε Η έκβαση παρουσίασης σε μια εφαρμογή web, το API καλύπτει την πλήρη επιφάνεια: slide συλλογές, master/layout slides, συλλογές σχήματος, κειμένου πλαίσια, συμπληρώστε μορφές και Επιλογές εξαγωγής.

Αυτό το άρθρο περνά μέσα από τις βασικές δυνατότητες διαχείρισης παρουσίασης – τις τάξεις και τις μεθόδους που θα χρησιμοποιήσετε περισσότερο όταν εργάζεστε με σκιές στο Python.


Τι περιλαμβάνεται

Εισαγωγή Ζωής

Η Presentation Η τάξη είναι το σημείο εισόδου. δημιουργήστε μια νέα δεξαμενή, χειριστείτε τα περιεχόμενά της και αποθηκεύετε στο PPTX. Presentation ως διευθυντής συνδέσμων με with να απελευθερώσει τα αρχεία χειρισμού αυτόματα.

import io
from aspose.slides_foss import Presentation
from aspose.slides_foss.export import SaveFormat

with Presentation() as pres:
    # A new presentation starts with one blank slide
    print("Slides:", len(pres.slides))  # 1

    # Save to a file
    pres.save("output.pptx", SaveFormat.PPTX)

    # Or save to a stream
    buf = io.BytesIO()
    pres.save(buf, SaveFormat.PPTX)

Σύνδεση με τη συλλογή

SlideCollection επιτρέπουν να προσθέσετε, να εισαγάγετε, κλωνοποιήστε, αφαιρέστε και επαναπροσδιορίστε τα σκιές. len(pres.slides) Εμφανίζεται ο τρέχοντος αριθμός μετά από κάθε αλλαγή.

from aspose.slides_foss import Presentation, ShapeType

with Presentation() as pres:
    layout = pres.layout_slides[0]

    # Add a blank slide using the first layout
    pres.slides.add_empty_slide(layout)

    # Insert at a specific position
    pres.slides.insert_empty_slide(1, layout)

    # Clone an existing slide (shapes are copied)
    pres.slides[0].shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 200, 100)
    pres.slides.add_clone(pres.slides[0])

    print("Total slides:", len(pres.slides))  # 4

    # Remove by index
    pres.slides.remove_at(3)

Φόρμες και αυτοσχεδιάσεις

Προσθήκη ορθογώνων, ελιπασμάτων, τριγωνιών και άλλων μορφών γεωμετρίας σε οποιαδήποτε σάιτ μέσω ShapeCollection.add_auto_shape().Κάθε σχήμα εκθέτει θέση, μέγεθος, περιστροφή, και να γεμίσει τις ιδιότητες που παραμένουν σε κύκλους αποθήκευσης / επαναφόρτωσης.

from aspose.slides_foss import Presentation, ShapeType

with Presentation() as pres:
    slide = pres.slides[0]
    slide.shapes.clear()

    rect = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 300, 150)
    rect.rotation = 15

    ellipse = slide.shapes.add_auto_shape(ShapeType.ELLIPSE, 400, 50, 200, 200)

    # Reorder z-index
    slide.shapes.reorder(0, ellipse)
    print("Front shape:", slide.shapes[0].shape_type)  # ELLIPSE

ΣΤΑΛΙΔΑ

Δημιουργία πίνακων δεδομένων με ShapeCollection.add_table(), καθορίστε κείμενο κυττάρου μέσω TextFrame, συγχωνεύστε τα κύτταρα και εφαρμόστε τη διαμόρφωση των συνόρων. ρίζες ύψους και στήλη Τα πλάτη ταιριάζουν με τις τιμές που μεταφέρετε στον κατασκευαστή.

from aspose.slides_foss import Presentation, FillType
from aspose.slides_foss.drawing import Color

with Presentation() as pres:
    slide = pres.slides[0]
    slide.shapes.clear()

    table = slide.shapes.add_table(50, 50, [150, 150, 150], [40, 40, 40])

    # Merge two cells in the second row
    table.merge_cells(table.rows[1][0], table.rows[1][1], False)

    # Style the header row with a bottom border
    for col_idx in range(len(table.columns)):
        fmt = table.rows[0][col_idx].cell_format
        fmt.border_bottom.fill_format.fill_type = FillType.SOLID
        fmt.border_bottom.fill_format.solid_fill_color.color = Color.from_argb(255, 0, 0, 0)
        fmt.border_bottom.width = 2

Master & Layout Slides

Κάθε παρουσίαση έχει μια ιεραρχία των master slides και layout slids. Μέσα από Presentation.masters και Presentation.layout_slides Να εφαρμόζεται συνεκτικά Σχεδιάστε το σε όλη την κάλυψη.

from aspose.slides_foss import Presentation

with Presentation() as pres:
    master = pres.masters[0]
    print("Master layouts:", len(master.layout_slides))

    # Pick a layout by type
    from aspose.slides_foss import SlideLayoutType
    title_layout = pres.layout_slides.get_by_type(SlideLayoutType.TITLE)
    if title_layout:
        pres.slides.add_empty_slide(title_layout)

Ιδιοκτησία εγγράφου

Διαβάστε και γράψτε ενσωματωμένα μεταδεδομένα όπως τίτλος, συγγραφέας και υποκείμενο μέσω της DocumentProperties Εισάγετε οποιαδήποτε από αυτές τις ιδιότητες πριν καλέσετε save() - ενσωματώνονται στα μεταδεδομένα PPTX και μπορούν να διαβάζονται με τα εργαλεία χαμηλής ροής:

from aspose.slides_foss import Presentation
from aspose.slides_foss.export import SaveFormat

with Presentation() as pres:
    props = pres.document_properties
    props.title = "Quarterly Report"
    props.author = "Engineering"
    props.subject = "Q1 2026 Results"

    pres.save("report.pptx", SaveFormat.PPTX)

Γρήγορη έναρξη

Εκτελέστε την ακόλουθη εντολή pip για να εγκαταστήσετε Aspose.Slides FOSS για Python από το PyPI:

pip install aspose-slides-foss

Το παρακάτω παράδειγμα δημιουργεί μια παρουσίαση με μορφή τίτλου, έναν πίνακα δεδομένων και ένα πλήκτρο, στη συνέχεια την αποθηκεύει στο PPTX:

from aspose.slides_foss import Presentation, ShapeType, FillType, NullableBool
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat

with Presentation() as pres:
    slide = pres.slides[0]
    slide.shapes.clear()

    # Add a title shape
    title = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 30, 860, 80)
    tf = title.add_text_frame("Quarterly Report")
    tf.paragraphs[0].portions[0].portion_format.font_bold = NullableBool.TRUE
    tf.paragraphs[0].portions[0].portion_format.font_height = 28

    # Add a data table
    table = slide.shapes.add_table(50, 150, [200, 200, 200], [40, 40, 40])
    headers = ["Region", "Revenue", "Growth"]
    for i, h in enumerate(headers):
        table.rows[0][i].text_frame.text = h

    # Fill the title shape background
    title.fill_format.fill_type = FillType.SOLID
    title.fill_format.solid_fill_color.color = Color.from_argb(255, 0, 51, 102)

    # Save as PPTX
    pres.save("report.pptx", SaveFormat.PPTX)

Υποστηριζόμενες μορφές

ΤΕΧΝΗΕΠΙΤΡΟΦΗΔιαβάστεΓράψε
PPTX.ΠΡΤΞ
PPT.ΠΡΤΣχεδιασμένο
PPSX.ΠΡΟΣΦΥΛΗΣχεδιασμένο
PPTM.ΠΡΤΜΣχεδιασμένο
POTX.ΠΟΤΞΣχεδιασμένο
ODP.ΟΔΠΣχεδιασμένο
PDF.pdfΣχεδιασμένο
HTML.htmlΣχεδιασμένο
HTML5.htmlΣχεδιασμένο
TIFF.ΤίφΣχεδιασμένο
GIF.ΓΓΙΤΣχεδιασμένο
XPS.xpsΣχεδιασμένο
FODP.ΦόρταΣχεδιασμένο
MD.ΜΔΣχεδιασμένο

Σημείωση : PPTX ανάγνωση και γραφής είναι πλήρως εφαρμοσμένη. SaveFormat οι τιμές (PPT, ODP, PDF κ.λπ.) προγραμματίζονται για μελλοντικές εκδόσεις· μεταφέρονται σε save() Παράγει σήμερα την παραγωγή PPTX.


Ανοικτή Πηγή & Άδεια Χρήσης

Aspose.Slides FOSS for Python is released under the MIT license. You can use it in προσωπικά, ακαδημαϊκά και εμπορικά έργα χωρίς περιορισμούς. ο κώδικας πηγής είναι η Διαθέσιμο σε GitHub Το πακέτο δημοσιεύεται στο PyPI.


Ξεκινώντας

Σχετικοί Πόροι