Tạo và thao tác bảng trong PowerPoint Python

Bảng thường được sử dụng để tổ chức dữ liệu dưới dạng hàng và cột. Chúng làm cho việc xem, hiểu và phân tích dữ liệu trở nên dễ dàng hơn. Trong nhiều trường hợp, bạn phải chèn bảng vào bản trình bày PowerPoint của mình. Để thực hiện điều đó theo chương trình, bài viết này trình bày cách tạo bảng trong PowerPoint PPT hoặc PPTX bằng Python. Hơn nữa, bạn sẽ học cách truy cập, sửa đổi và định dạng các bảng PowerPoint hiện có.

Thư viện Python để tạo và thao tác với bảng PowerPoint

Aspose.Slides dành cho Python cung cấp một loạt các tính năng để tạo, thao tác và chuyển đổi các tài liệu PowerPoint và OpenOffice. Chúng tôi sẽ sử dụng thư viện này để tạo, chỉnh sửa và thao tác các bảng trong bản trình bày PowerPoint của chúng tôi. Bạn có thể cài đặt thư viện từ PyPI bằng lệnh sau.

> pip install aspose.slides

Tạo bảng trong PowerPoint PPT bằng Python

Sau đây là các bước để tạo bảng trong PowerPoint PPT / PPTX bằng Python.

  • Đầu tiên, sử dụng lớp Trình bày để tải hoặc tạo bản trình bày PPT / PPTX.
  • Sau đó, lấy tham chiếu của trang trình bày mong muốn nơi bạn muốn thêm bảng.
  • Sau đó, tạo hai mảng để xác định chiều rộng và chiều cao của cột và hàng tương ứng.
  • Chèn một bảng mới trên trang chiếu bằng phương thức ISlide.shapes.addtable() và lấy tham chiếu của nó.
  • Bắt đầu một vòng lặp để lặp qua các hàng của bảng.
  • Bắt đầu một vòng lặp lồng nhau để lặp qua các ô của bảng và thực hiện các thao tác sau trong mỗi lần lặp.
    • Đặt văn bản của ô bằng thuộc tính Table.rows [row] [cell] .textframe.text.
    • Đặt kiểu đường viền của ô, nếu được yêu cầu.
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (string, SaveFormat).

Mẫu mã sau đây cho biết cách tạo bảng trong bản trình bày PowerPoint.

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

# Tạo bản trình bày mới (để tải bản trình bày hiện có, hãy cung cấp đường dẫn của tệp trong hàm tạo)
with slides.Presentation() as pres:
    # Truy cập trang trình bày đầu tiên
    sld = 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 = sld.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])):
            
            # Thêm văn bản
            tbl.rows[row][cell].text_frame.text = "Cell_" + cell

            # Đặt đường viền
            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.red
            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.red
            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.red
            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.red
            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 to the merged cell
    tbl.rows[0][0].text_frame.text = "Merged Cells"

    # Lưu PPTX vào đĩa
    pres.save("table.pptx", slides.export.SaveFormat.PPTX)

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

Tạo bảng trong PowerPoint PPT bằng Python

Chỉnh sửa bảng trong PowerPoint PPT bằng Python

Bạn cũng có thể sửa đổi bảng hiện có bằng cách truy cập bảng đó từ trang trình bày. Đây là cách bạn có thể truy cập bảng PowerPoint và chỉnh sửa nội dung hoặc hình thức của nó bằng Python.

  • Đầu tiên, tải tệp PowerPoint PPT / PPTX hiện có bằng lớp Trình bày.
  • Sau đó, lấy tham chiếu của slide mong muốn vào một đối tượng.
  • Tạo một đối tượng cho bảng và khởi tạo nó bằng None.
  • Lặp lại tất cả các hình dạng trong trang trình bày bằng cách sử dụng bộ sưu tập ISlide.shapes.
  • Lọc các hình dạng của loại Bảng.
  • Thao tác với bảng theo yêu cầu.
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (string, SaveFormat).

Mẫu mã sau đây cho thấy cách chỉnh sửa bảng trong PowerPoint PPT bằng Python.

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

    # Khởi tạo null TableEx
    tbl = None

    # Lặp lại các hình dạng và đặt một tham chiếu đến bảng được tìm thấy
   for shp in sld.shapes:
        if type(shp) is slides.Table:
            tbl = shp

    # Đặt văn bản của cột đầu tiên của hàng thứ hai
    tbl.rows[0][1].text_frame.text = "New"

    # Lưu PPTX vào đĩa
    pres.save("table1_out.pptx", slides.export.SaveFormat.PPTX)

Định dạng văn bản trong bảng PowerPoint bằng Python

Aspose.Slides for Python cũng cho phép bạn áp dụng định dạng cho văn bản bên trong bảng. Các bước sau đây chỉ ra cách bạn có thể đạt được điều này.

  • Đầu tiên, tải một 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 slide mong muốn vào một đối tượng.
  • Nhận tham chiếu của bảng mong muốn từ trang chiếu vào một đối tượng.
  • Đặt định dạng bằng cách sử dụng các đối tượng PortionFormat, ParagraphFormat và TextFrameFormat.
  • Gán định dạng cho bảng bằng phương thức Table.settextformat().
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (string, SaveFormat).

Mẫu mã sau đây cho thấy cách đặt định dạng văn bản bên trong bảng trong PowerPoint bằng Python.

import aspose.slides as slides

# Tạo bản trình bày
with slides.Presentation() as presentation:

    # Thêm bảng
    someTable = presentation.slides[0].shapes.add_table(100, 100, [100, 50, 30], [30, 50, 30])

    # Đặt chiều cao phông chữ của các ô trong bảng
    portionFormat = slides.PortionFormat()
    portionFormat.font_height = 25
    someTable.set_text_format(portionFormat)

    # Đặt căn chỉnh văn bản và lề phải của các ô trong bảng trong một lệnh gọi
    paragraphFormat = slides.ParagraphFormat()
    paragraphFormat.alignment = slides.TextAlignment.RIGHT
    paragraphFormat.margin_right = 20
    someTable.set_text_format(paragraphFormat)

    # Đặt kiểu dọc văn bản của các ô trong bảng
    textFrameFormat = slides.TextFrameFormat()
    textFrameFormat.text_vertical_type = slides.TextVerticalType.VERTICAL
    someTable.set_text_format(textFrameFormat)

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

Khóa tỷ lệ khung hình của bảng PowerPoint bằng Python

Bạn cũng có thể khóa tỷ lệ khung hình của các bảng trong bản trình bày PowerPoint bằng Python, như được minh họa trong các bước sau.

  • Đầu tiên, tải một 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 slide mong muốn vào một đối tượng.
  • Tạo một bảng hoặc truy xuất tham chiếu của một bảng hiện có vào một đối tượng.
  • Khóa tỷ lệ khung hình bằng cách sử dụng thuộc tính Table.shapelock.aspectratiolocked.
  • Cuối cùng, lưu bản trình bày bằng phương thức Presentation.save (string, SaveFormat).

Mẫu mã sau đây cho thấy cách khóa tỷ lệ co của bảng trong PowerPoint PPTX.

import aspose.slides as slides

# Tạo bản trình bày
with slides.Presentation() as pres:
    # Thêm bảng
    table = pres.slides[0].shapes.add_table(100, 100, [100, 50, 30], [30, 50, 30])
    print("Khóa tỷ lệ khung hình set: {0}".format(table.shape_lock.aspect_ratio_locked))
    
    # Khóa tỷ lệ khung hình
    table.shape_lock.aspect_ratio_locked = not table.shape_lock.aspect_ratio_locked
    print("Khóa tỷ lệ khung hình set: {0}".format(table.shape_lock.aspect_ratio_locked))

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

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

Bạn có thể sử dụng Aspose.Slides for Python 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

Bảng là một phần không thể thiếu của tài liệu, được sử dụng để sắp xếp dữ liệu. Trong bài viết này, bạn đã học cách tạo bảng trong PowerPoint PPT và PPTX bằng Python. Hơn nữa, bạn đã thấy cách truy cập và thao tác các bảng hiện có trong bản trình bày PowerPoint theo chương trình. Bên cạnh đó, bạn cũng có thể truy cập tài liệu để khám phá thêm về Aspose.Slides for Python. Ngoài ra, bạn có thể đặt câu hỏi của mình qua diễn đàn của chúng tôi.

Xem thêm

Thông tin: Sử dụng công cụ chuyển đổi Aspose JPG sang PPT hoặc PNG sang PPT, bạn có thể tạo bản trình bày PowerPoint từ những hình ảnh đơn giản.