Chỉnh sửa PowerPoint bằng Python

Là nhà phát triển Python, bạn có thể dễ dàng chỉnh sửa bản trình bày PowerPoint theo chương trình. Bạn có thể cập nhật nội dung trang chiếu mà không cần cài đặt bất kỳ ứng dụng bên ngoài nào bằng Python. Bài viết này sẽ tập trung vào cách chỉnh sửa bản trình bày PowerPoint bằng API REST trong Python.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

Trình chỉnh sửa tài liệu API REST và SDK Python

Để chỉnh sửa PPTX, tôi sẽ sử dụng API Python SDK của GroupDocs.Editor Cloud. Nó cho phép bạn chỉnh sửa theo chương trình các tài liệu xử lý Word, trang tính Excel hoặc tài liệu có định dạng được hỗ trợ khác. Nó cũng cung cấp SDK .NET, Java, PHP, Ruby, Android và Node.js dưới dạng các thành viên trong họ trình soạn thảo tài liệu cho Cloud API.

Bạn có thể cài đặt GroupDocs.Editor-Cloud cho dự án Python của mình bằng lệnh sau trong bảng điều khiển:

pip install groupdocs_editor_cloud

Vui lòng lấy ID khách hàng và Bí mật khách hàng của bạn từ bảng điều khiển trước khi bạn bắt đầu làm theo các bước và ví dụ về mã có sẵn. Khi bạn có ID và bí mật của mình, hãy thêm mã như minh họa bên dưới:

client_id = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5"
client_secret = "479db2b01dcb93a3d4d20efb16dea971"

configuration = groupdocs_editor_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""

Chỉnh sửa bản trình bày PowerPoint bằng API REST trong Python

Bạn có thể chỉnh sửa bản trình bày PowerPoint bằng cách làm theo các bước đơn giản dưới đây:

  1. Tải lên tệp PPTX lên Đám mây
  2. Chỉnh sửa tệp đã tải lên
  3. Tải xuống tệp đã cập nhật

Tải lên tài liệu

Trước hết, hãy tải bản trình bày PowerPoint lên Đám mây bằng ví dụ mã được cung cấp bên dưới:

# tạo phiên bản của api
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# tải lên tập tin mẫu
request = groupdocs_editor_cloud.UploadFileRequest("sample.pptx", "C:\\Files\\sample.pptx", my_storage)
response = file_api.upload_file(request)

Do đó, tệp PPTX sẽ được tải lên Cloud Storage và sẽ có trong phần tệp trên trang tổng quan của bạn.

Chỉnh sửa bản trình bày PowerPoint bằng Python

Vui lòng làm theo các bước được đề cập bên dưới để chỉnh sửa bản trình bày PowerPoint theo chương trình.

  • Tạo phiên bản API tệpChỉnh sửa API
  • Cung cấp đường dẫn tệp đầu vào
  • Cung cấp PresentationLoadOptions
  • Tải tệp bằng phương pháp Tải của Chỉnh sửa API
  • Tải xuống tài liệu HTML bằng phương pháp Tải tệp xuống của API tệp
  • Chỉnh sửa Tài liệu HTML đã tải xuống
  • Tải lại HTML lên bằng phương pháp Tải tệp lên của API tệp
  • Cung cấp PresentationSaveOptions để lưu trong PPTX
  • Lưu HTML trở lại PPTX bằng phương pháp Lưu của Chỉnh sửa API

Đoạn mã sau cho biết cách cập nhật tài liệu bản trình bày PowerPoint bằng API REST.

# khởi tạo api
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)

# tải nó vào trạng thái có thể chỉnh sửa
fileInfo = groupdocs_editor_cloud.FileInfo("sample.pptx")
loadOptions = groupdocs_editor_cloud.PresentationLoadOptions()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"
loadOptions.slide_number = 0
loadOptions.show_hidden_slides = True
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions)) 

# tải tài liệu html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""     

# đọc tệp HTML
with open(htmlFile, 'r') as file:
    html = file.read() 

# thay thế văn bản    
html = html.replace("Hello World", "Welcome")

# tải HTML trở lại bộ nhớ
with open(htmlFile, 'w') as file:
    file.write(html)

fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))

# lưu HTML trở lại PPTX
saveOptions = groupdocs_editor_cloud.PresentationSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.pptx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveOptions.password = "password"
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))

# xong
print("Document edited: " + saveResult.path)
Chỉnh sửa bản trình bày PowerPoint bằng Python

Chỉnh sửa bản trình bày PowerPoint bằng Python

Tải xuống tệp cập nhật

Mẫu mã trên sẽ lưu tệp bản trình bày PowerPoint (PPTX) đã chỉnh sửa trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

# khởi tạo api
file_api = groupdocs_editor_cloud.FileApi.from_config(configuration)

# Tải tập tin
request = groupdocs_editor_cloud.DownloadFileRequest("edited.pptx", my_storage)
response = file_api.download_file(request)

# di chuyển tệp đã tải xuống vào thư mục làm việc của bạn
shutil.move(response, "C:\\Files\\")

Cập nhật hình ảnh trong bản trình bày PowerPoint bằng Python

Vui lòng làm theo các bước được đề cập bên dưới để cập nhật hình ảnh trong bản trình bày PowerPoint theo chương trình.

  • Tạo các phiên bản API tệpChỉnh sửa API
  • Cung cấp đường dẫn tệp đầu vào
  • Cung cấp PresentationLoadOptions
  • Tải tệp bằng phương pháp Tải của Chỉnh sửa API
  • Tải xuống tài liệu HTML bằng phương pháp Tải xuống tệp của API tệp
  • Tải lên tệp hình ảnh
  • Chỉnh sửa Tài liệu HTML đã tải xuống and update the image
  • Tải lại HTML lên bằng phương pháp Tải tệp lên của API tệp
  • Cung cấp PresentationSaveOptions để lưu trong PPTX
  • Lưu HTML trở lại PPTX bằng phương pháp Lưu của Chỉnh sửa API

Đoạn mã sau cho biết cách cập nhật hình ảnh trên trang trình bày PowerPoint bằng API REST.

# khởi tạo api
editApi = groupdocs_editor_cloud.EditApi.from_keys(client_id, client_secret)
fileApi = groupdocs_editor_cloud.FileApi.from_keys(client_id, client_secret)

# tải nó vào trạng thái có thể chỉnh sửa
fileInfo = groupdocs_editor_cloud.FileInfo("sample.pptx")
loadOptions = groupdocs_editor_cloud.PresentationLoadOptions()
loadOptions.file_info = fileInfo
loadOptions.output_path = "output"
loadOptions.slide_number = 0
loadResult = editApi.load(groupdocs_editor_cloud.LoadRequest(loadOptions)) 

# tải tài liệu html
htmlFile = fileApi.download_file(groupdocs_editor_cloud.DownloadFileRequest(loadResult.html_path))
html = ""     

# đọc tệp HTML
with open(htmlFile, 'r') as file:
    html = file.read() 

# tải lên hình ảnh để thay thế
request = groupdocs_editor_cloud.UploadFileRequest(loadOptions.output_path + "/sample.files/groupdocs.png", "C:\\Files\\groupdocs.png", "")
response = fileApi.upload_file(request)

# thay thế hình ảnh   
html = html.replace("Picture 2.png", "groupdocs.png")

# tải HTML trở lại bộ nhớ
with open(htmlFile, 'w') as file:
    file.write(html)

fileApi.upload_file(groupdocs_editor_cloud.UploadFileRequest(loadResult.html_path, htmlFile))

# lưu HTML trở lại PPTX
saveOptions = groupdocs_editor_cloud.PresentationSaveOptions()
saveOptions.file_info = fileInfo
saveOptions.output_path = "edited.pptx"
saveOptions.html_path = loadResult.html_path
saveOptions.resources_path = loadResult.resources_path
saveResult = editApi.save(groupdocs_editor_cloud.SaveRequest(saveOptions))
Cập nhật hình ảnh trong slide thuyết trình PowerPoint

Cập nhật hình ảnh trong slide thuyết trình PowerPoint

API tạo một tệp HTML tại đường dẫn PresentationLoadOptions.output\đã xác định. Tất cả các tệp tài nguyên được liên kết với tệp HTML đã tạo được đặt trong thư mục con tệp có tiền tố là tên tệp đầu vào, chẳng hạn như “sample.files” trong trường hợp này. Bạn cần tải lên hình ảnh trong thư mục này và sau đó thay thế nó bằng hình ảnh mục tiêu. Tất cả các hình ảnh trên trang chiếu được đặt tên là Ảnh 2, Ảnh 3, v.v. trong thuộc tính “src”.

Thử trực tuyến

Vui lòng dùng thử công cụ chỉnh sửa PowerPoint trực tuyến miễn phí sau đây, được phát triển bằng API trên. https://products.groupdocs.app/editor/pptx

Phần kết luận

Trong bài viết này, bạn đã học cách chỉnh sửa bản trình bày PowerPoint trên đám mây bằng API REST của Trình chỉnh sửa tài liệu bằng Python. Bạn cũng đã học cách lập trình tải tệp PPTX lên đám mây rồi tải xuống tệp đã cập nhật từ đám mây. Bạn có thể tìm hiểu thêm về GroupDocs.Editor Cloud API bằng cách sử dụng tài liệu. Chúng tôi cũng cung cấp phần Tham khảo API cho phép bạn hình dung và tương tác trực tiếp với các API của chúng tôi thông qua trình duyệt. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm