Giới thiệu

Aspose.Slides FOSS for Python is now available on PyPI: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx các tệp hoàn toàn bằng Python, không phụ thuộc vào Microsoft Office hay bất kỳ môi trường chạy độc quyền nào.

Thư viện được thiết kế cho các nhà phát triển cần tạo hoặc thao tác các tệp trình chiếu một cách lập trình: tự động hoá các bộ slide từ dữ liệu, trích xuất văn bản và siêu dữ liệu từ các tệp PPTX đã tải lên, xây dựng các pipeline báo cáo dựa trên trình chiếu, hoặc nhúng việc tạo trình chiếu vào các ứng dụng web. Vì aspose-slides-foss là Python thuần túy với chỉ lxml là một phụ thuộc duy nhất, nó được triển khai đồng nhất trên Windows, macOS, Linux và các container Docker.

Các tính năng chính

  • Hỗ trợ PPTX toàn diện: Mở bất kỳ .pptx tệp, sửa đổi nội dung của nó và lưu lại mà không mất các phần XML không xác định mà thư viện chưa hiểu.
  • Quản lý slide: Thêm, xóa và duyệt các slide bằng cách sử dụng prs.slides; bản trình chiếu bắt đầu với một slide trống sau khi slides.Presentation().
  • AutoShapes, Bảng và Kết nối: Chèn hình dạng qua slide.shapes.add_auto_shape(), dữ liệu bảng qua slide.shapes.add_table(), và các kết nối trực quan giữa các hình dạng qua slide.shapes.add_connector().
  • Định dạng văn bản phong phú: Định dạng văn bản ở mức ký tự bằng PortionFormat: kích thước phông chữ, in đậm, in nghiêng, gạch chân và màu ARGB qua FillType.SOLIDColor.from_argb().
  • Các loại tô: Áp dụng FillType.SOLID, GRADIENT, PATTERN, hoặc PICTURE điền vào bất kỳ hình dạng nào.
  • Hiệu ứng hình ảnh: Bóng ngoài, phát sáng, viền mềm, làm mờ, phản chiếu và bóng trong qua shape.effect_format.
  • 3D formatting: Bevel, camera, light rig, material, và extrusion depth qua shape.three_d_format.
  • Ghi chú người thuyết trình: Đính kèm văn bản ghi chú vào mỗi slide qua notes_slide_manager.add_notes_slide().
  • Bình luận dạng chuỗi: Thêm bình luận kèm siêu dữ liệu tác giả và vị trí slide.
  • Hình ảnh nhúng: Nhúng từ đường dẫn tệp, byte, hoặc io.BytesIO luồng.
  • Thuộc tính tài liệu: Đọc và ghi các thuộc tính core, app và tùy chỉnh.

Bắt đầu

Cài đặt từ PyPI. Python 3.10 trở lên là bắt buộc; lxml được cài đặt tự động.

pip install aspose-slides-foss

Tạo bản trình bày đầu tiên của bạn với một hình dạng và lưu lại:

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

with slides.Presentation() as prs:
    slide = prs.slides[0]
    shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 400, 120)
    shape.add_text_frame("Hello from Aspose.Slides FOSS!")
    prs.save("hello.pptx", SaveFormat.PPTX)

Luôn sử dụng Presentation bên trong một with khối; điều này đảm bảo mọi tài nguyên nội bộ được giải phóng khi khối kết thúc.

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

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:
    shape = prs.slides[0].shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 500, 150)
    tf = shape.add_text_frame("Bold heading in corporate blue")
    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("formatted.pptx", SaveFormat.PPTX)

Các hạn chế hiện tại

Các khu vực sau gây ra NotImplementedError trong bản phát hành này:

  • Biểu đồ, SmartArt và các đối tượng OLE
  • Hoạt ảnh và chuyển đổi slide
  • Xuất ra PDF, HTML, SVG hoặc các định dạng hình ảnh
  • Liên kết siêu văn bản, cài đặt hành động, macro VBA và chữ ký số

Các phần XML không xác định gặp phải trong quá trình tải sẽ được giữ nguyên khi lưu, vì vậy các tệp PPTX được tạo bởi các công cụ khác có thể quay lại một cách an toàn.

Xem Thêm