Tạo và sửa đổi ppt pptx PowerPoint bằng Python

MS PowerPoint là một ứng dụng phổ biến và thường được sử dụng cho phép bạn tạo các bản trình bày tương tác bằng cách sử dụng biểu đồ, đồ họa, hoạt ảnh và các yếu tố khác. Là một lập trình viên, bạn có thể cần phải tự động hóa các tính năng thao tác trình bày của PowerPoint từ bên trong các ứng dụng Python. Trong bài viết này, bạn sẽ học cách tạo bản trình bày PowerPoint PPT hoặc PPTX bằng Python từ đầu. Ngoài ra, chúng tôi sẽ trình bày cách thêm động các trang trình bày, văn bản, bảng, hình ảnh và biểu đồ trong bản trình bày PPT.

Thư viện Python để tạo PowerPoint PPT PPTX - Tải xuống miễn phí

Aspose.Slides for Python qua .NET là một thư viện Python mạnh mẽ cho phép bạn tạo và thao tác PowerPoint PPT / PPTX mà không cần MS Office. Hơn nữa, bạn có thể cập nhật các bản trình bày hiện có và chuyển đổi chúng sang các định dạng khác. Bạn có thể cài đặt thư viện từ PyPI bằng lệnh pip sau.

> pip install aspose.slides

Tạo PPT PowerPoint bằng Python

Đầu tiên, hãy tạo một bản trình bày PowerPoint có một trang chiếu trống, được thêm vào theo mặc định. Các bước sau đây cho biết cách tạo PPT PowerPoint bằng Python.

  • Đầu tiên, tạo một thể hiện của lớp Trình bày.
  • Sau đó, lưu PPT bằng phương thức Presentation.save (string, export.SaveFormat).

Mẫu mã sau đây cho thấy cách tạo tệp PowerPoint PPTX bằng Python.

import aspose.slides as slides

# Tạo một bản trình bày mới
with slides.Presentation() as presentation:
    
    # Truy cập trang trình bày mặc định
    slide = presentation.slides[0]
    
    # Lưu bản trình bày
    presentation.save("create-presentation.pptx", slides.export.SaveFormat.PPTX)

Mở PPTX PowerPoint bằng Python

Bạn cũng có thể mở một bản trình bày hiện có và cập nhật nội dung của nó. Để đạt được điều này, bạn chỉ cần cung cấp đường dẫn của tệp bản trình bày trong phương thức khởi tạo Bản trình bày. Mẫu mã sau đây cho thấy cách mở tệp PPT / PPTX hiện có bằng Python.

import aspose.slides as slides

# Mở bản trình bày
with slides.Presentation("presentation.ppt") as presentation:
    
    # Truy cập trang trình bày mặc định
    slide = presentation.slides[0]
    
    # Lưu bản trình bày
    presentation.save("create-presentation.ppt", slides.export.SaveFormat.PPT)

Python: Thêm trang trình bày vào PowerPoint PPT

Bây giờ chúng ta hãy thêm một slide mới trong bản trình bày mà chúng ta đã tạo trước đó. Bạn cũng có thể thêm các trang trình bày vào bản trình bày hiện có theo cách tương tự bằng cách mở bản trình bày trước (như được hiển thị trong phần trước). Sau đây là các bước để thêm một trang chiếu trong bản trình bày PPT / PPTX bằng Python.

  • Đầu tiên, tạo một bản trình bày mới (hoặc tải bản trình bày hiện có) bằng cách sử dụng lớp Trình bày.
  • Sau đó, lấy tham chiếu của bộ sưu tập trang trình bày bằng thuộc tính Presentation.slides.
  • Thêm trang trình bày bằng phương pháp Presentation.slides.addemptyslide (LayoutSlide).
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (string, export.SaveFormat).

Mẫu mã sau đây cho thấy cách thêm một trang chiếu trong PowerPoint PPT bằng Python.

import aspose.slides as slides

# Tạo một bản trình bày mới
with slides.Presentation() as pres:
    # Tham khảo các slide
    slds = pres.slides

    # Lặp qua các trang trình bày bố cục
   for i in range(len(pres.layout_slides)):
        # Thêm một trang trình bày trống vào bộ sưu tập trang trình bày
        slds.add_empty_slide(pres.layout_slides[i])
        
    # Thực hiện một số công việc trên trang trình bày mới được thêm vào

    # Lưu tệp PPTX vào Đĩa
    pres.save("presentation.pptx", slides.export.SaveFormat.PPTX)

Tạo PowerPoint PPT và thêm văn bản bằng Python

Khi đã thêm slide, chúng ta có thể tiến hành thêm nội dung. Đầu tiên, hãy xem cách thêm văn bản vào các slide thuyết trình bằng Python.

  • Tạo PPT / PPTX mới (hoặc tải hiện có) bằng cách sử dụng lớp Trình bày.
  • Nhận tham chiếu của trang trình bày từ bộ sưu tập Presentation.slides.
  • Thêm một hình dạng tự động mới trong trang trình bày bằng cách sử dụng phương thức Slide.shapes.addautoshape (slides.ShapeType.RECTANGLE, int, int, int, int) và lấy tham chiếu của hình dạng trong một đối tượng.
  • Thêm khung văn bản vào hình dạng bằng phương thức addtextframe (string).
  • Truy cập đoạn văn bản mặc định của khung văn bản.
  • Truy cập phần mặc định của đoạn văn.
  • Thêm văn bản vào phần và lưu bản trình bày bằng phương thức Presentation.save (string, export.SaveFormat).

Mẫu mã sau đây cho thấy cách thêm văn bản vào trang chiếu trong PPT bằng Python.

import aspose.slides as slides

# Tạo bản trình bày
with slides.Presentation() as pres:
    # Truy cập trang trình bày đầu tiên
    slide = pres.slides[0]

    # Thêm AutoShape với loại được đặt là Hình chữ nhật
    ashp = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 150, 75, 150, 50)

    # Thêm TextFrame vào Hình chữ nhật
    ashp.add_text_frame(" ")

    # Truy cập khung văn bản
    txtFrame = ashp.text_frame

    # Tạo đối tượng Đoạn văn cho khung văn bản
    para = txtFrame.paragraphs[0]

    # Tạo một đối tượng Portion cho đoạn văn
    portion = para.portions[0]

    # Đặt văn bản
    portion.text = "Aspose TextBox"

    # Lưu bản trình bày
    pres.save("add-text-in-presentation.pptx", slides.export.SaveFormat.PPTX)

Sau đây là ảnh chụp màn hình của slide sau khi thêm văn bản.

thêm văn bản trong powerpoint ppt trong python

Đọc thêm về cách làm việc với văn bản trong bản trình bày PowerPoint.

Thêm bảng trong PowerPoint PPTX bằng Python

Bảng là một phần không thể thiếu của tài liệu và cũng được sử dụng rộng rãi trong các bài thuyết trình PowerPoint. Aspose.Slides for Python giúp bạn tạo bảng trong bản trình bày dễ dàng hơn. Vì vậy, hãy xem cách tạo một bảng trong PPT bằng Python.

  • Tạo PPT / PPTX mới (hoặc tải hiện có) bằng cách sử dụng lớp Trình bày.
  • Nhận tham chiếu của trang trình bày từ bộ sưu tập Presentation.slides.
  • Xác định mảng gồm các cột có chiều rộng và các hàng có chiều cao.
  • Tạo bảng bằng Slide.shapes.addTable() và lấy tham chiếu của bảng trong một đối tượng.
  • Lặp qua các ô để áp dụng định dạng.
  • Thêm văn bản vào các ô bằng thuộc tính Table.rows [] []. Textframe.text.
  • Lưu bản trình bày bằng phương thức Presentation.save (string, export.SaveFormat).

Mẫu mã sau đây cho thấy cách tạo bảng trong PowerPoint PPTX bằng Python.

import aspose.slides as slides
import aspose.pydrawing as drawing

# Tạo bản trình bày
with slides.Presentation() as pres:
    # Truy cập trang trình bày đầu tiên
    slide = pres.slides[0]

    # Xác định cột có chiều rộng và hàng có chiều cao
    dblCols =  [50, 50, 50] 
    dblRows =  [50, 30, 30, 30, 30] 

    # Thêm hình dạng bảng vào trang trình bày
    tbl = slide.shapes.add_table(100, 50, dblCols, dblRows)

    # Đặt định dạng đường viền cho mỗi ô
   for row in range(len(tbl.rows)):
       for cell in range(len(tbl.rows[row])):
            tbl.rows[row][cell].cell_format.border_top.fill_format.fill_type = slides.FillType.SOLID
            tbl.rows[row][cell].cell_format.border_top.fill_format.solid_fill_color.color = drawing.Color.blue
            tbl.rows[row][cell].cell_format.border_top.width = 5

            tbl.rows[row][cell].cell_format.border_bottom.fill_format.fill_type = slides.FillType.SOLID
            tbl.rows[row][cell].cell_format.border_bottom.fill_format.solid_fill_color.color= drawing.Color.blue
            tbl.rows[row][cell].cell_format.border_bottom.width =5

            tbl.rows[row][cell].cell_format.border_left.fill_format.fill_type = slides.FillType.SOLID
            tbl.rows[row][cell].cell_format.border_left.fill_format.solid_fill_color.color =drawing.Color.blue
            tbl.rows[row][cell].cell_format.border_left.width = 5

            tbl.rows[row][cell].cell_format.border_right.fill_format.fill_type = slides.FillType.SOLID
            tbl.rows[row][cell].cell_format.border_right.fill_format.solid_fill_color.color = drawing.Color.blue
            tbl.rows[row][cell].cell_format.border_right.width = 5


    # Hợp nhất các ô 1 và 2 của hàng 1
    tbl.merge_cells(tbl.rows[0][0], tbl.rows[1][1], False)

    # Thêm văn bản vào ô đã hợp nhất
    tbl.rows[0][0].text_frame.text = "Merged Cells"

    # Lưu bản trình bày
    pres.save("add-table-in-presentation.pptx", slides.export.SaveFormat.PPTX)

Sau đây là đầu ra của đoạn mã trên.

thêm bảng trong PowerPoint ppt bằng Python

Để khám phá các tính năng khác liên quan đến bảng, hãy truy cập tạo và thao tác với bảng.

Tạo biểu đồ trong bản trình bày PowerPoint

Sau đây là các bước để thêm biểu đồ trong bản trình bày PowerPoint bằng Python.

  • Tạo bản trình bày mới (hoặc tải bản trình bày hiện có) bằng lớp Trình bày.
  • Nhận tham chiếu của trang trình bày từ bộ sưu tập Presentation.slides.
  • Thêm biểu đồ với kiểu mong muốn bằng phương pháp Slide.shapes.addChart (ChartType, single, single, single, single).
  • Truy cập trang tính dữ liệu biểu đồ.
  • Xóa tất cả các chuỗi và danh mục mặc định.
  • Thêm loạt và danh mục mới.
  • Thêm dữ liệu biểu đồ mới cho chuỗi biểu đồ.
  • Đặt màu tô cho chuỗi biểu đồ.
  • Thêm nhãn chuỗi biểu đồ.
  • Lưu bản trình bày dưới dạng tệp PPTX.

Mẫu mã sau đây cho thấy cách thêm biểu đồ trong PPT bằng Python.

import aspose.slides as slides
import aspose.pydrawing as drawing

# Tạo bản trình bày
with slides.Presentation() as pres:
    # Truy cập trang trình bày đầu tiên
    slide = pres.slides[0]

    # Truy cập trang trình bày đầu tiên
    sld = pres.slides[0]

    # Thêm biểu đồ với dữ liệu mặc định
    chart = sld.shapes.add_chart(slides.charts.ChartType.CLUSTERED_COLUMN, 0, 0, 500, 500)

    # Đặt tiêu đề biểu đồ
    chart.chart_title.add_text_frame_for_overriding("Sample Title")
    chart.chart_title.text_frame_for_overriding.text_frame_format.center_text = 1
    chart.chart_title.height = 20
    chart.has_title = True

    # Đặt chuỗi đầu tiên thành Hiển thị giá trị
    chart.chart_data.series[0].labels.default_data_label_format.show_value = True

    # Đặt chỉ mục của bảng dữ liệu biểu đồ
    defaultWorksheetIndex = 0

    # Nhận bảng dữ liệu biểu đồ
    fact = chart.chart_data.chart_data_workbook

    # Xóa chuỗi và danh mục được tạo mặc định
    chart.chart_data.series.clear()
    chart.chart_data.categories.clear()
    s = len(chart.chart_data.series)
    s = len(chart.chart_data.categories)

    # Thêm sê-ri mới
    chart.chart_data.series.add(fact.get_cell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.type)
    chart.chart_data.series.add(fact.get_cell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.type)

    # Thêm danh mục mới
    chart.chart_data.categories.add(fact.get_cell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"))
    chart.chart_data.categories.add(fact.get_cell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"))
    chart.chart_data.categories.add(fact.get_cell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"))

    # Lấy chuỗi biểu đồ đầu tiên
    series = chart.chart_data.series[0]

    # Hiện đang điền dữ liệu chuỗi

    series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 1, 1, 20))
    series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 2, 1, 50))
    series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 3, 1, 30))

    # Đặt màu tô cho chuỗi
    series.format.fill.fill_type = slides.FillType.SOLID
    series.format.fill.solid_fill_color.color = drawing.Color.red

    # Lấy chuỗi biểu đồ thứ hai
    series = chart.chart_data.series[1]

    # Hiện đang điền dữ liệu chuỗi
    series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 1, 2, 30))
    series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 2, 2, 10))
    series.data_points.add_data_point_for_bar_series(fact.get_cell(defaultWorksheetIndex, 3, 2, 60))

    # Đặt màu tô cho chuỗi
    series.format.fill.fill_type = slides.FillType.SOLID
    series.format.fill.solid_fill_color.color = drawing.Color.orange

    # Nhãn đầu tiên sẽ được hiển thị Tên danh mục
    lbl = series.data_points[0].label
    lbl.data_label_format.show_category_name = True

    lbl = series.data_points[1].label
    lbl.data_label_format.show_series_name = True

    # Hiển thị giá trị cho nhãn thứ ba
    lbl = series.data_points[2].label
    lbl.data_label_format.show_value = True
    lbl.data_label_format.show_series_name = True
    lbl.data_label_format.separator = "/"

    # Lưu bản trình bày
    pres.save("create-chart-in-presentation.pptx", slides.export.SaveFormat.PPTX)

Ảnh chụp màn hình sau đây cho thấy biểu đồ chúng tôi đã tạo bằng cách sử dụng đoạn mã ở trên.

thêm biểu đồ trong PowerPoint pptx bằng Python

Tìm hiểu thêm về cách tạo biểu đồ trong bản trình bày PowerPoint.

Tạo PPT và thêm hình ảnh bằng Python

Sau đây là các bước để thêm hình ảnh trong PowerPoint PPTX bằng Python.

  • Tạo bản trình bày mới (hoặc tải bản trình bày hiện có) bằng lớp Trình bày.
  • Nhận tham chiếu của trang trình bày từ bộ sưu tập Presentation.slides.
  • Mở hình ảnh từ tệp bằng phương thức mở (chuỗi, chuỗi).
  • Thêm hình ảnh vào bộ sưu tập hình ảnh của bản trình bày bằng phương thức Presentation.images.addimage().
  • Thêm hình ảnh vào trang chiếu bằng phương thức Slide.shapes.addpictureframe().
  • Lưu bản trình bày bằng phương thức Presentation.save (string, export.SaveFormat).

Mẫu mã sau đây cho thấy cách thêm hình ảnh vào bản trình bày PowerPoint bằng Python.

import aspose.slides as slides

# Tạo bản trình bày
with slides.Presentation() as pres:
    # Truy cập trang trình bày đầu tiên
    slide = pres.slides[0]

    # Tải hình ảnh từ tệp
    with open("python-logo.png", "rb") as in_file:
      
        # Thêm hình ảnh vào bộ sưu tập hình ảnh của bản trình bày
        image = pres.images.add_image(in_file)

        # Thêm hình ảnh vào trang trình bày
        slide.shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 10, 10, 100, 100, image)

    # Lưu bản trình bày
    pres.save("add-image-in-presentation.pptx", slides.export.SaveFormat.PPTX)

Sau đây là kết quả của mẫu mã ở trên.

thêm hình ảnh trong PowerPoint PPT bằng Python

Đọc thêm về làm việc với hình ảnh trong bản trình bày PowerPoint.

Thư viện Python để tạo PowerPoint PPTX - Nhận giấy phép miễn phí

Bạn có thể sử dụng Aspose.Slides for Python qua .NET mà không có giới hạn đánh giá bằng cách nhận giấy phép tạm thời miễn phí.

Sự kết luận

Trong bài viết này, bạn đã học cách tạo PowerPoint PPT / PPTX từ đầu bằng Python. Chúng tôi đã trình bày cách thêm trang trình bày, văn bản, bảng, biểu đồ và hình ảnh trong bản trình bày PowerPoint PPT / PPTX. Hơn nữa, bạn có thể khám phá các tính năng khác của Aspose.Slides for Python bằng cách sử dụng tài liệu. Ngoài ra, hãy chia sẻ thắc mắc của bạn với chúng tôi qua diễn đàn của chúng tôi.

Xem thêm