Tudásbázis

Python PPTX | PowerPoint prezentációk manipulálása

Ha szeretné megtudni, hogyan hozhat létre, olvashat, testreszabhat, egyesíthet, klónozhat vagy konvertálhat PowerPoint és OpenOffice prezentációkat Python segítségével, külső szoftverek nélkül, mi segítünk.

Az Aspose.Slides for Python via .NET egy osztálykönyvtár a prezentációk kezelésére, amely számos kulcsfontosságú funkciót kínál, például prezentációk létrehozása a semmiből, prezentációk konvertálása, szövegek, alakzatok, táblázatok, animációk kezelése, diák előnézete, diák exportálása PDF, TIFF, XPS, HTML formátumba stb., valamint még sok más funkciót. Az Aspose.Slides for Python via .NET demókat és működő példákat biztosít, hogy jobban megismerhesse API‑ját.

API‑nk a következő funkciókat kínálja:

• Diák létrehozása vagy klónozása sablonokból
• PowerPoint táblázatok kezelése
• Alakzatok védelmének eltávolítása vagy hozzáadása
• MS Excel diagramok hozzáadása OleObject‑ként
• Prezentációk generálása adatbázisból
• Prezentációk védelme
• Diagramok létrehozása és módosítása
• Prezentációk exportálása PDF, XPS, HTML, JPEG, PNG, SVG és még sok más formátumba

Támogatott fájlformátumok:

Az Aspose.Slides for Python via .NET képes betölteni és menteni a következő formátumokat: PPT, POT, PPS, PPTX, POTX, PPSX, PPTM, PPSM, POTM, ODP, OTP, valamint menthet TIFF, EMF, PDF, XPS, JPEG, PNG, GIFF, BMP, SVG, SWF, HTML, XAML formátumokba.

Az alábbiakban bemutatjuk, hogyan hozhat létre, nyithat meg, egyesíthet és menthet egy prezentációt, valamint kódrészleteket is biztosítunk.

Python PPTX | PowerPoint prezentációk manipulálása

Hogyan hozhatunk létre PowerPoint (PPTX) prezentációt Python‑ban

Az Aspose.Slides for Python via .NET használatával egy új vonalat adhatunk egy diára a következő lépések szerint:

  1. Hozzon létre egy Presentation osztálypéldányt
  2. Szerezze be a dia hivatkozását az Indeks alapján
  3. A shapes objektum add_auto_shape metódusával adjon hozzá egy LINE típusú AutoShape‑t
  4. Mentse a prezentációt PPTX fájlként

Ezekkel a lépésekkel egy vonalat adtunk az első diához:

import aspose.slides as slides  

# Egy Presentation objektum példányosítása, amely egy prezentációs fájlt képvisel
with slides.Presentation() as presentation:
    slide = presentation.slides[0]
    slide.shapes.add_auto_shape(slides.ShapeType.LINE, 50, 150, 300, 0)
    presentation.save("NewPresentation_out.pptx", slides.export.SaveFormat.PPTX)

Hogyan nyissunk meg egy prezentációt Python‑ban

Az Aspose.Slides for Python via .NET segítségével a fejlesztők meglévő PowerPoint prezentációkat érhetnek el vagy módosíthatnak.

API‑nk egy Presentation osztályt biztosít a meglévő prezentáció megnyitásához, és a Presentation osztály megfelelő konstruktorával hozhatjuk létre az objektumot egy már létező PowerPoint fájl alapján. Az alábbi példában bemutatjuk, hogyan nyithatunk meg egy prezentációt. A konstruktorba átadjuk a fájl nevét, majd kiírjuk a diák összes számát a képernyőre.

import aspose.slides as slides

# A prezentáció fájl megnyitása a konstruktorba átadott elérési úttal
with slides.Presentation("pres.pptx") as pres:
    # A prezentációban lévő diák számának kiírása
    print(pres.slides.length)

Ha nagyon nagy prezentációkkal dolgozik (például a fájl mérete 3 GB), az alábbi mintakóddal nyithatja meg őket:

import aspose.slides as slides
import os

loadOptions = slides.LoadOptions()
loadOptions.blob_management_options = slides.BlobManagementOptions()
loadOptions.blob_management_options.presentation_locking_behavior = slides.PresentationLockingBehavior.KEEP_LOCKED

with slides.Presentation("pres.pptx", loadOptions) as pres:
    # A hatalmas prezentáció betöltve, de a memóriahasználat alacsony marad.

    # Bármilyen módosítás elvégzése a prezentáción.
    pres.slides[0].name = "Very large presentation"

    # A prezentáció mentése egy másik fájlba, a memóriahasználat továbbra is alacsony.
    pres.save("veryLargePresentation-copy.pptx", slides.export.SaveFormat.PPTX)

    # Nem szabad ezt tenni! IO kivétel keletkezik, mert a fájl zárolva van, amíg a pres objektum nem kerül felszabadításra
    os.remove("pres.pptx")

# Itt már rendben van, a forrásfájl nincs zárolva a pres objektum által
os.remove("pres.pptx")

Ha olyan prezentációt hoz létre, amely nagy objektumokat (nagyméretű képek, videók, hangok stb.) tartalmaz, használja a Blob szolgáltatást a memóriafogyasztás csökkentéséhez.

Hogyan egyesítsünk PowerPoint prezentációkat Python‑ban

Az Aspose.Slides for Python via .NET többféleképpen is lehetővé teszi a prezentációk egyesítését. Egyesítheti a PowerPoint prezentációkat azok alakzataival, formázásával, szövegeivel, stílusaival, megjegyzéseivel stb. minőség vagy adatveszteség nélkül. API‑nk segítségével egyesíthet teljes prezentációkat, konkrét diákot, vagy különböző formátumú prezentációkat (PPTX‑t PPTX‑be, PPT‑t PPT‑be stb.), illetve különböző formátumok között (PPTX‑t PPT‑be, PPTX‑t ODP‑be stb.).

A prezentációk egyesítéséhez használhatja a add_clone metódust (az ISlideCollection interfészből). A Presentation objektum egy diakollekciót tartalmaz, és a kiválasztott prezentáció add_clone metódusával egyesítheti a diákot.

Prezentáció egyesítése

Az AddClone (ISlide) metódus használatával kombinálhatja a diákot anélkül, hogy azok megjelenése vagy stílusa elveszne (alapértelmezett paraméterek).
Az alábbi kódban látható, hogyan egyesíthetünk prezentációkat:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide)
        pres1.save("combined.pptx", slides.export.SaveFormat.PPTX)

Prezentáció egyesítése és a diák stílusának módosítása
Ha az egyesítés közben módosítani szeretné a kimeneti prezentáció diáinak stílusát, a add_clone (ISlide, IMasterSlide, Boolean) metódus ezt lehetővé teszi.

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide, pres1.masters[0], allow_clone_missing_layout = True)
        pres1.save("combined_with_master.pptx", slides.export.SaveFormat.PPTX)

Kijelölt diák egyesítése
Az alábbi kóddal kiválaszthat és egyesíthet konkrét diákot különböző prezentációkból, egyetlen kimeneti fájlt hozva létre:

import aspose.slides as slides

with slides.Presentation("pres.pptx") as pres1:
    with slides.Presentation("Presentation1.pptx") as pres2:
        for slide in pres2.slides:
            pres1.slides.add_clone(slide, pres1.layout_slides[0])
        pres1.save("combined_with_layout.pptx", slides.export.SaveFormat.PPTX)

További egyesítési lehetőségekért tekintse meg a Merge Presentation szekciót a dokumentációban.

Hogyan menthetünk PowerPoint prezentációkat Python‑ban

Az Aspose.Slides for Python via .NET segítségével a prezentációt fájlként vagy adatfolyamként menthetjük. Az alábbiakban mindkét módszerhez mintakódot mutatunk be.

Prezentáció mentése fájlként
A prezentációt a Presentation osztály Save metódusával menthetjük.

Az alábbi kódban látható, hogyan menthetünk egy prezentációt Aspose.Slides for Python via .NET használatával Python‑ban, a fájlnév és a mentési formátum megadásával:

import aspose.slides as slides

# Egy Presentation objektum példányosítása, amely egy PPT fájlt képvisel
with slides.Presentation() as presentation:
    
    # ... itt végezze el a szükséges műveleteket ...

    # A prezentáció mentése fájlba
    presentation.save("Saved_out.pptx", slides.export.SaveFormat.PPTX)

Prezentáció mentése adatfolyamra
Az egyik módja a prezentációk mentésének, ha adatfolyamra mentjük őket. Egyszerűen adja át a kimeneti adatfolyamot a Presentation osztály Save metódusának. Az alábbi példában létrehoztunk egy új Presentation fájlt, szöveget adtunk egy alakzathoz, majd a prezentációt adatfolyamra mentettük.

import aspose.slides as slides

# Egy Presentation objektum példányosítása, amely egy PPT fájlt képvisel
with slides.Presentation() as presentation:
    
    shape = presentation.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 200, 200, 200)

    # A prezentáció mentése adatfolyamra
    with open("Save_As_Stream_out.pptx", "bw") as stream:
        presentation.save(stream, slides.export.SaveFormat.PPTX)

Dokumentációnkban megtalálja, hogyan menthet prezentációkat előre definiált nézettípussal , menthet prezentációkat szigorú Open XML táblázatformátumba , vagy menthet előrehaladási frissítéseket százalékban .

Az Aspose.Slides for Python via .NET kompatibilis a Python 3.5, 3.6, 3.7, 3.8, 3.9 verziókkal, és Linuxon is használható – a további Linuxra vonatkozó követelményeket itt tekintheti meg.

Fizetett tanácsadás

Ha segítségre van szüksége a projektjében, szakértőink állnak rendelkezésére, hogy együtt dolgozzanak a megoldáson, megtervezzék a rendszert, és az API‑t az Ön igényei szerint implementálják. Mi elvégezzük a nehéz munkát, hogy Ön a vállalkozására koncentrálhasson.