Kết hợp và hợp nhất các tệp PowerPoint PPT/PPTX trong Python

Kết hợp và hợp nhất các tệp PowerPoint PPT/PPTX trong Python

Bản trình bày PowerPoint là tập hợp các trang chiếu trong đó mỗi trang chiếu có thể bao gồm văn bản, hình ảnh, hoạt ảnh và phương tiện, v.v. Hợp nhất các bản trình bày PowerPoint bằng cách sao chép và dán từng trang một vào bản trình bày chính là một quá trình tốn thời gian. Vì vậy, GroupDocs cung cấp thư viện python tự động hợp nhất các tệp PowerPoint trong vài giây. Bạn có thể dễ dàng kết hợp hai hoặc nhiều tệp PPTX thành một tệp PowerPoint duy nhất theo chương trình trên đám mây. Trong bài viết này, chúng ta sẽ tìm hiểu một giải pháp dễ dàng về cách kết hợp và hợp nhất các tệp PowerPoint PPT/PPTX trong Python.

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

API REST sáp nhập PowerPoint của Python - Cài đặt

Để kết hợp hai hoặc nhiều tệp PPTX, chúng tôi sẽ sử dụng Python SDK của GroupDocs.Merger Cloud API. Nó cho phép bạn kết hợp hai hoặc nhiều tệp vào một tài liệu hoặc chia một tài liệu nguồn thành nhiều tài liệu đầu ra. Nó cũng cho phép bạn dịch chuyển, xóa, trao đổi, xoay hoặc thay đổi hướng trang theo hướng dọc hoặc ngang cho toàn bộ hoặc phạm vi trang ưa thích. SDK này hỗ trợ hợp nhất và chia tách tất cả các định dạng tài liệu phổ biến như Word, Excel, PowerPoint, Visio, OneNote, PDF, HTML, v.v.

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

pip install groupdocs_merger_cloud

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

# Nhập Python SDK vào ứng dụng python của bạn từ http://api.groupdocs.cloud
import groupdocs_merger_cloud

# Nhận client_id và client_secret từ https://dashboard.groupdocs.cloud sau khi đăng ký miễn phí.
client_id = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
client_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Nhận cấu hình API tệp 
configuration = groupdocs_merger_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
storage_name = "MyStorage"

Hợp nhất các tệp PowerPoint PPTX trong Python bằng API REST

Bạn có thể kết hợp hai tệp PowerPoint PPT/PPTX theo chương trình trên đám mây bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

  1. Tải lên tệp PPTX lên đám mây
  2. Hợp nhất nhiều tệp PPTX bằng Python
  3. Tải xuống tệp PPTX đã hợp nhất

Tải lên tệp PPTX

Đầu tiên, tải các tệp PPTX lên đám mây bằng ví dụ mã được cung cấp bên dưới:

# Tải tệp PowerPoint lên bộ nhớ đám mây
# Tạo phiên bản của API
import glob
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)
storage_api = groupdocs_merger_cloud.StorageApi.from_config(configuration)

# tải lên các tập tin mẫu
for filename in glob.iglob("H:\\groupdocs-cloud-data\\upload\\*.pptx", recursive=True):
    destFile = filename.replace("H:\\groupdocs-cloud-data\\upload", "", 1)           
    # kiểm tra xem tệp đã tồn tại chưa
    fileExistsResponse = storage_api.object_exists(groupdocs_merger_cloud.ObjectExistsRequest(destFile))
    if not fileExistsResponse.exists:
        # tạo yêu cầu tệp tải lên
        request = groupdocs_merger_cloud.UploadFileRequest(destFile, filename)
        # tải tệp lên đám mây
        response = file_api.upload_file(request)
        print(response.uploaded)

Do đó, các tệp PPTX đã tải lên sẽ có sẵn trong phần tệp của trang tổng quan của bạn trên đám mây.

Hợp nhất nhiều tệp PPTX bằng Python

Bạn có thể dễ dàng hợp nhất nhiều tệp PPTX thành một tệp theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của DocumentApi
  • Tạo một thể hiện của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem đầu tiên trong FileInfo
  • Tạo một phiên bản khác của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem thứ hai trong FileInfo
  • Thêm nhiều JoinItems để hợp nhất nhiều hơn hai tệp
  • Tạo một phiên bản của JoinOptions
  • Thêm danh sách các mục tham gia đã tạo được phân tách bằng dấu phẩy
  • Đặt đường dẫn tệp đầu ra
  • Tạo một phiên bản của JoinRequest với JoinOptions
  • Cuối cùng, kết hợp các tệp bằng cách gọi phương thức join() của DocumentAPI với JoinRequest

Đoạn mã sau cho biết cách hợp nhất nhiều tệp PowerPoint trong Python bằng API REST:

# Cách hợp nhất các tệp PowerPoint PPTX trong Python 
# Tạo các phiên bản API cần thiết
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# Tệp nguồn đầu vào 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("python-testing/powerpoint-one.pptx")

# Tệp nguồn đầu vào 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("python-testing/powerpoint-two.pptx")

# Xác định các tùy chọn tham gia
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "python-testing/joined-files.pptx"

# Tạo yêu cầu tham gia
request = groupdocs_merger_cloud.JoinRequest(options)

# Hợp nhất các tệp pptx
result = documentApi.join(request)
print("Successfully merged PPTX files: " + str(result))

Tải xuống tệp đã hợp nhất

Mẫu mã trên sẽ lưu tệp PPTX đã hợp nhất trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

# Khởi tạo API để tải xuống tệp đã hợp nhất
import shutil
file_api = groupdocs_merger_cloud.FileApi.from_config(configuration)

# Tạo yêu cầu tệp tải xuống
request = groupdocs_merger_cloud.DownloadFileRequest("python-testing\\joined-files.pptx", storage_name)

# Tải xuống tệp đã hợp nhất
response = file_api.download_file(request)

# Di chuyển tệp đã tải xuống vào thư mục của bạn
shutil.move(response, "H:\\groupdocs-cloud-data\\")

Hợp nhất các trang cụ thể của nhiều tệp PPTX trong Python

Bạn có thể dễ dàng kết hợp các trang cụ thể của nhiều tệp PowerPoint vào một tài liệu theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của DocumentApi
  • Tạo một thể hiện của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem đầu tiên trong FileInfo
  • Xác định danh sách số trang trong một mảng được phân tách bằng dấu phẩy
  • Tạo một phiên bản khác của JoinItem
  • Cung cấp đường dẫn tệp đầu vào cho JoinItem thứ hai trong FileInfo
  • Xác định số trang bắt đầu và số trang kết thúc
  • Xác định chế độ phạm vi trang là OddPages
  • Tạo một phiên bản của JoinOptions
  • Thêm danh sách các mục tham gia đã tạo được phân tách bằng dấu phẩy
  • Đặt đường dẫn tệp đầu ra
  • Tạo một phiên bản của JoinRequest với JoinOptions
  • Cuối cùng, hợp nhất pptx bằng cách gọi phương thức join() của DocumentAPI với JoinRequest

Đoạn mã sau cho biết cách hợp nhất các trang cụ thể của tệp PPTX bằng API REST trong Python:

# Cách hợp nhất các trang cụ thể của nhiều tệp PPTX trong Python
# Tạo và khởi tạo các phiên bản api
documentApi = groupdocs_merger_cloud.DocumentApi.from_config(configuration)

# Tệp nguồn đầu vào 1
item1 = groupdocs_merger_cloud.JoinItem()
item1.file_info = groupdocs_merger_cloud.FileInfo("python-testing/powerpoint-one.pptx")
# số trang của các trang cụ thể để hợp nhất
item1.pages = [1,2]

# Tệp nguồn đầu vào 2
item2 = groupdocs_merger_cloud.JoinItem()
item2.file_info = groupdocs_merger_cloud.FileInfo("python-testing/powerpoint-two.pptx")
# số slide bắt đầu
item2.start_page_number = 2
# số slide kết thúc
item2.end_page_number = 4
# chế độ phạm vi slide
item2.range_mode = "OddPages"

# Xác định các tùy chọn tham gia
options = groupdocs_merger_cloud.JoinOptions()
options.join_items = [item1, item2]
options.output_path = "python-testing/joined-slides.pptx"

# Tạo yêu cầu tham gia
request = groupdocs_merger_cloud.JoinRequest(options)

# Hợp nhất các tệp pptx
result = documentApi.join(request)
print("Successfully merged PPTX slides: " + str(result))

Thử trực tuyến

Làm cách nào để kết hợp PPTX trực tuyến? Vui lòng thử công cụ hợp nhất PPTX trực tuyến miễn phí sau đây, được phát triển bằng API ở trên.

Phần kết luận

Trong hướng dẫn này, chúng ta đã học được:

  • cách hợp nhất nhiều tệp PPTX trên đám mây bằng python;
  • lập trình tải lên và tải xuống tệp đã hợp nhất;
  • cách kết hợp các trang cụ thể của nhiều tệp PPTX thành một tệp duy nhất trong Python;

Ngoài ra, bạn có thể tìm hiểu thêm về GroupDocs.Merger 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à giao tiếp trực tiếp với các API của chúng tôi thông qua trình duyệt. Ngoài ra, vui lòng xem GroupDocs.Merger Cloud SDK dành cho Python Ví dụ tại đây.

Đặt một câu hỏi

Nếu bạn có bất kỳ câu hỏi nào về việc hợp nhất PowerPoint, vui lòng hỏi chúng tôi trên Diễn đàn hỗ trợ miễn phí.

Xem thêm