Savybės ir galimybės

Savybės ir galimybės

Aspose.Slides FOSS for Python suteikia platų galimybių rinkinį programiškai dirbant su PowerPoint .pptx failais. Šiame puslapyje pateikiamos visos palaikomos funkcijų sritys su atitinkamais kodo pavyzdžiais.


Pateikties Į/I

Atidarykite esamą .pptx failą arba sukurkite naują, tada išsaugokite jį atgal PPTX formatu.

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

# Open an existing presentation
with slides.Presentation("input.pptx") as prs:
    print(f"Slide count: {len(prs.slides)}")
    prs.save("output.pptx", SaveFormat.PPTX)

# Create a new presentation (starts with one blank slide)
with slides.Presentation() as prs:
    prs.save("new.pptx", SaveFormat.PPTX)

Pastaba: PPTX yra vienintelis palaikomas išsaugojimo formatas. Eksportavimas į PDF, HTML, SVG arba į vaizdus nėra prieinamas.

Nežinomos XML dalys šaltinio faile išsaugomos nepakitusiomis, todėl atvėrus ir išsaugojus .pptx niekada nebus pašalintas turinys, kurio biblioteka dar nesupranta.


Skaidrių valdymas

Pridėkite, pašalinkite, klonuokite ir pertvarkykite skaidres.

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    # Access the first slide
    slide = prs.slides[0]

    # Add an additional blank slide at the end
    prs.slides.add_empty_slide(prs.layout_slides[0])

    print(f"Total slides: {len(prs.slides)}")
    prs.save("multi-slide.pptx", SaveFormat.PPTX)

Figūros

Pridėkite AutoShapes, PictureFrames, Tables ir Connectors į skaidrę.

AutoShapes

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    slide = prs.slides[0]
    # Add a rectangle at (x=50, y=50) with width=300, height=100
    shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 300, 100)
    shape.add_text_frame("Aspose.Slides FOSS")
    prs.save("shapes.pptx", SaveFormat.PPTX)

Lentelės

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    slide = prs.slides[0]
    # Column widths and row heights in points
    col_widths = [120.0, 120.0, 120.0]
    row_heights = [40.0, 40.0, 40.0]
    table = slide.shapes.add_table(50, 50, col_widths, row_heights)
    table.rows[0][0].text_frame.text = "Product"
    table.rows[0][1].text_frame.text = "Quantity"
    table.rows[0][2].text_frame.text = "Price"
    prs.save("table.pptx", SaveFormat.PPTX)

Jungikliai

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    slide = prs.slides[0]
    box1 = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 100, 150, 60)
    box2 = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 350, 100, 150, 60)
    conn = slide.shapes.add_connector(ShapeType.BENT_CONNECTOR3, 0, 0, 10, 10)
    conn.start_shape_connected_to = box1
    conn.start_shape_connection_site_index = 3  # right side
    conn.end_shape_connected_to = box2
    conn.end_shape_connection_site_index = 1    # left side
    prs.save("connector.pptx", SaveFormat.PPTX)

Teksto formatavimas

Formatuokite tekstą pastraipos ir simbolio lygiu naudodami PortionFormat.

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

with slides.Presentation() as prs:
    slide = prs.slides[0]
    shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 500, 150)
    tf = shape.add_text_frame("Bold blue heading")

    fmt = tf.paragraphs[0].portions[0].portion_format
    fmt.font_height = 28
    fmt.font_bold = NullableBool.TRUE
    fmt.fill_format.fill_type = FillType.SOLID
    fmt.fill_format.solid_fill_color.color = Color.from_argb(255, 0, 70, 127)

    prs.save("text.pptx", SaveFormat.PPTX)

NullableBool.TRUE nustato savybę aiškiai; NullableBool.NOT_DEFINED paveldi iš skaidrių pagrindo.


Užpildymo tipai

Taikykite vientisą, gradientinį, rašto arba paveikslėlio užpildą formoms.

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType, FillType
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    slide = prs.slides[0]
    shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 300, 150)

    # Solid fill
    shape.fill_format.fill_type = FillType.SOLID
    shape.fill_format.solid_fill_color.color = Color.from_argb(255, 30, 120, 200)

    prs.save("fill.pptx", SaveFormat.PPTX)

Vizualiniai efektai

Taikykite išorinį šešėlį, švytėjimą, minkštą kraštą, išblykimą, atspindį ir vidinį šešėlį figūroms.

Efekto savybės yra prieinamos per shape.effect_format. Nustatykite outer_shadow_effect, glow_effect, soft_edge_effect, blur_effect, reflection_effect arba inner_shadow_effect, kad konfigūruotumėte kiekvieną atskirai.


3D formatavimas

Taikykite 3D nuolydį, kamerą, apšvietimo įrangą, medžiagą ir išskyrimo gylį per shape.three_d_format. Tai valdo vizualinį gylį ir apšvietimo modelį formų atvaizdavimui PPTX peržiūros programose, kurios palaiko 3D efektus.


Kalbėtojo pastabos

Pridėkite pastabas prie bet kurios skaidrės naudodami notes_slide_manager.

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    notes = prs.slides[0].notes_slide_manager.add_notes_slide()
    notes.notes_text_frame.text = "Key talking point: emphasize the ROI benefit."
    prs.save("notes.pptx", SaveFormat.PPTX)

Komentarai

Pridėkite gijų komentarus su autoriaus informacija ir skaidrės padėtimi.

import aspose.slides_foss as slides
from aspose.slides_foss.drawing import PointF
from aspose.slides_foss.export import SaveFormat
from datetime import datetime

with slides.Presentation() as prs:
    author = prs.comment_authors.add_author("Jane Smith", "JS")
    slide = prs.slides[0]
    author.comments.add_comment(
        "Please verify this data before the presentation.",
        slide,
        PointF(2.0, 2.0),
        datetime.now()
    )
    prs.save("comments.pptx", SaveFormat.PPTX)

Įterpti paveikslėliai

Įterpkite paveikslą iš failo kelio į pristatymą ir pridėkite jį į skaidrę kaip PictureFrame.

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    with open("logo.png", "rb") as f:
        image_data = f.read()
    image = prs.images.add_image(image_data)
    slide = prs.slides[0]
    slide.shapes.add_picture_frame(
        slides.ShapeType.RECTANGLE, 50, 50, 200, 150, image
    )
    prs.save("with-image.pptx", SaveFormat.PPTX)

Dokumento savybės

Skaityti ir rašyti pagrindines, programos ir pasirinktines dokumento savybes.

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    props = prs.document_properties

    # Core properties
    props.title = "Q1 Results"
    props.author = "Finance Team"
    props.subject = "Quarterly Review"
    props.keywords = "Q1, finance, results"

    # Custom property
    props.set_custom_property_value("ReviewedBy", "Legal Team")

    prs.save("deck.pptx", SaveFormat.PPTX)

Žinomi apribojimai

Šios sritys sukelia NotImplementedError ir nėra prieinamos šioje leidimo versijoje:

SritisBūsena
DiagramosNeįgyvendinta
SmartArtNeįgyvendinta
Animacijos ir perėjimaiNeįgyvendinta
PDF / HTML / SVG / vaizdo eksportavimasNeįgyvendinta (tik PPTX)
VBA makrokomandosNeįgyvendinta
Skaitmeniniai parašaiNeįgyvendinta
Hipernuorodos ir veiksmų nustatymaiNeįgyvendinta
OLE objektaiNeįgyvendinta
Matematinis tekstasNeįgyvendinta

Žr. taip pat

 Lietuvių