Lấy toàn bộ nền slide từ một bản trình bày dưới dạng hình ảnh

Tổng quan

Trong các bài thuyết trình PowerPoint, nền của một slide có thể được tạo thành từ nhiều thành phần, bao gồm hình nền slide, giao diện bài thuyết trình, bảng màu và các đối tượng được đặt trên slide chủ hoặc slide bố cục.

Bài viết này trình bày cách trích xuất toàn bộ nền slide dưới dạng hình ảnh bằng Aspose.Slides cho .NET. Vì không có phương pháp đơn lẻ cho nhiệm vụ này, cách tiếp cận bao gồm nhân bản slide đã chọn vào một bản trình bày tạm thời, xóa các hình dạng trên slide, sau đó chuyển nền slide kết quả thành hình ảnh.

Lấy toàn bộ nền slide

Aspose.Slides cho Android qua Java không cung cấp phương pháp đơn giản để trích xuất toàn bộ nền slide của bản trình bày dưới dạng hình ảnh, nhưng bạn có thể thực hiện các bước dưới đây để làm điều đó:

  1. Tải bản trình bày bằng lớp Presentation
  2. Lấy kích thước slide từ bản trình bày.
  3. Chọn một slide.
  4. Tạo một bản trình bày tạm thời.
  5. Đặt cùng kích thước slide trong bản trình bày tạm thời.
  6. Nhân bản slide đã chọn vào bản trình bày tạm thời.
  7. Xóa các hình dạng khỏi slide đã nhân bản.
  8. Chuyển slide đã nhân bản thành hình ảnh.

Ví dụ mã sau trích xuất toàn bộ nền slide của bản trình bày dưới dạng hình ảnh.

int slideIndex = 0;
int imageScale = 1;

Presentation presentation = new Presentation("sample.pptx");

Dimension2D slideSize = presentation.getSlideSize().getSize();
ISlide slide = presentation.getSlides().get_Item(slideIndex);

Presentation tempPresentation = new Presentation();

float slideWidth = (float)slideSize.getWidth();
float slideHeight = (float)slideSize.getHeight();
tempPresentation.getSlideSize().setSize(slideWidth, slideHeight, SlideSizeScaleType.DoNotScale);

ISlide clonedSlide = tempPresentation.getSlides().addClone(slide);
clonedSlide.getShapes().clear();

IImage background = clonedSlide.getImage(imageScale, imageScale);
background.save("output.png", ImageFormat.Png);

tempPresentation.dispose();
presentation.dispose();

Câu hỏi thường gặp

Liệu các gradient phức tạp, họa tiết hoặc nền hình ảnh từ slide chủ có được giữ nguyên trong hình nền kết quả không?

Có. Aspose.Slides render các gradient, hình ảnh và họa tiết được định nghĩa trên slide, bố cục hoặc slide chủ. Nếu bạn cần tách biệt giao diện khỏi các slide chủ kế thừa, đặt nền riêng cho slide hiện tại trước khi xuất.

Tôi có thể thêm watermark vào hình nền kết quả trước khi lưu không?

Có. Bạn có thể thêm watermark dưới dạng hình dạng hoặc hình ảnh trên một bản sao của slide đang làm việc (đặt phía sau nội dung khác) và sau đó xuất. Điều này cho phép bạn tạo ra hình nền có watermark được nhúng sẵn.

Tôi có thể lấy nền cho một bố cục hoặc slide chủ cụ thể mà không cần gắn vào slide hiện có không?

Có. Truy cập vào slide chủ hoặc bố cục mong muốn, áp dụng nó vào một slide tạm thời với kích thước yêu cầu, sau đó xuất slide đó để nhận nền được tạo từ bố cục hoặc slide chủ đó.

Có những hạn chế về giấy phép nào ảnh hưởng đến việc xuất hình ảnh không?

Các tính năng render hoàn toàn khả dụng khi có giấy phép hợp lệ. Trong chế độ đánh giá, đầu ra có thể bị giới hạn như có watermark. Kích hoạt giấy phép một lần cho mỗi tiến trình trước khi thực hiện xuất hàng loạt.