Các tính năng và khả năng

Các tính năng và khả năng

Aspose.Slides FOSS for Python provides a broad set of capabilities for working with PowerPoint .pptx tập tin một cách lập trình. Trang này liệt kê tất cả các khu vực tính năng được hỗ trợ cùng với các ví dụ mã đại diện.


Nhập/Xuất Bản trình chiếu

Mở một tệp hiện có .pptx tệp hoặc tạo một tệp mới, sau đó lưu lại dưới định dạng PPTX.

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)

Lưu ý: PPTX là định dạng lưu duy nhất được hỗ trợ. Xuất ra PDF, HTML, SVG, hoặc hình ảnh không khả dụng.

Các phần XML không xác định trong tệp nguồn được giữ nguyên khi lưu, vì vậy việc mở và lưu lại một .pptx sẽ không bao giờ loại bỏ nội dung mà thư viện chưa hiểu.


Quản lý Slide

Thêm, xóa, sao chép và sắp xếp lại các slide.

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)

Hình dạng

Thêm AutoShapes, PictureFrames, Tables và Connectors vào một slide.

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)

Tables

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)

Connectors

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)

Định dạng Văn bản

Định dạng văn bản ở mức đoạn và ký tự bằng cách sử dụng 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 đặt thuộc tính một cách rõ ràng; NullableBool.NOT_DEFINED kế thừa từ mẫu slide.


Các loại tô

Áp dụng tô màu đặc, gradient, họa tiết hoặc hình ảnh cho các hình dạng.

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)

Hiệu ứng trực quan

Áp dụng bóng ngoài, phát sáng, viền mềm, làm mờ, phản chiếu và bóng trong cho các hình dạng.

Các thuộc tính hiệu ứng có thể truy cập thông qua shape.effect_format. Đặt outer_shadow_effect, glow_effect, soft_edge_effect, blur_effect, reflection_effect, hoặc inner_shadow_effect để cấu hình từng cái một cách độc lập.


3D Formatting

Áp dụng viền 3D, camera, hệ thống ánh sáng, vật liệu và độ sâu đùn qua shape.three_d_format. Điều này kiểm soát độ sâu hình ảnh và mô hình chiếu sáng cho việc render hình dạng trong các trình xem PPTX hỗ trợ hiệu ứng 3D.


Ghi chú người thuyết trình

Đính kèm ghi chú vào bất kỳ slide nào bằng 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)

Bình luận

Thêm bình luận dạng chuỗi với thông tin tác giả và vị trí slide.

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)

Hình ảnh nhúng

Nhúng một hình ảnh từ đường dẫn tệp vào bản trình chiếu và thêm nó vào slide dưới dạng 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)

Thuộc tính tài liệu

Đọc và ghi các thuộc tính tài liệu core, app và tùy chỉnh.

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)

Các hạn chế đã biết

Các khu vực sau gây ra NotImplementedError và không có sẵn trong phiên bản này:

Khu vựcTrạng thái
Biểu đồChưa triển khai
SmartArtChưa triển khai
Hoạt ảnh và chuyển đổiChưa triển khai
Xuất PDF / HTML / SVG / hình ảnhChưa triển khai (chỉ PPTX)
Macro VBAChưa triển khai
Chữ ký sốChưa triển khai
Liên kết và cài đặt hành độngChưa triển khai
Đối tượng OLEChưa được triển khai
Văn bản toán họcChưa được triển khai

Xem Thêm

 Tiếng Việt