Funktioner och möjligheter
Funktioner och möjligheter
Aspose.Slides FOSS for Python provides a broad set of capabilities for working with PowerPoint .pptx filer programatiskt. Denna sida listar alla stödda funktionsområden med representativa kodexempel.
Presentation I/O
Öppna en befintlig .pptx fil eller skapa en ny, och spara sedan tillbaka till PPTX-format.
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)Obs: PPTX är det enda stödda sparformatet. Export till PDF, HTML, SVG eller bilder är inte tillgängligt.
Okända XML-delar i källfilen bevaras ordagrant vid sparning, så att öppna och spara om en .pptx kommer aldrig att ta bort innehåll som biblioteket ännu inte förstår.
Hantera bilder
Lägg till, ta bort, klona och omordna bilder.
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)Former
Lägg till AutoShapes, PictureFrames, tabeller och anslutningar på en bild.
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)Tabeller
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)Anslutningar
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)Textformatering
Formatera text på stycke- och teckennivå med hjälp av 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 sätter egenskapen explicit; NullableBool.NOT_DEFINED ärver från bildbakgrunden.
Fylltyper
Applicera solida, gradient-, mönster- eller bildfyllningar på former.
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)Visuella effekter
Applicera yttre skugga, glöd, mjuk kant, oskärpa, reflektion och inre skugga på former.
Effektegenskaperna är åtkomliga via shape.effect_format. Ställ in outer_shadow_effect, glow_effect, soft_edge_effect, blur_effect, reflection_effect, eller inner_shadow_effect för att konfigurera varje separat.
3D Formatting
Applicera 3D-avfasning, kamera, ljusrigg, material och extruderingsdjup via shape.three_d_format. Detta styr den visuella djupet och ljusmodellen för formrendering i PPTX-visare som stödjer 3D-effekter.
Talarnoter
Bifoga anteckningar till valfri bild med 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)Kommentarer
Lägg till trådade kommentarer med författarinformation och bildposition.
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)Inbäddade bilder
Bädda in en bild från en filsökväg i presentationen och lägg till den på en bild som en 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)Dokumentegenskaper
Läs och skriv kärn-, app- och anpassade dokumentegenskaper.
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)Kända begränsningar
Följande områden ger upphov till NotImplementedError och är inte tillgängliga i den här utgåvan:
| Område | Status |
|---|---|
| Diagram | Ej implementerad |
| SmartArt | Ej implementerad |
| Animationer och övergångar | Ej implementerad |
| PDF / HTML / SVG / bildexport | Ej implementerad (endast PPTX) |
| VBA-makron | Ej implementerad |
| Digitala signaturer | Ej implementerad |
| Hyperlänkar och åtgärdsinställningar | Ej implementerad |
| OLE-objekt | Ej implementerad |
| Matematisk text | Ej implementerad |
Se även
- Komma igång: Installation och första skriptet
- API-referens: Klass- och metodreferens
- Instruktionsguider: Uppgiftsorienterade artiklar