Truy xuất và Cập nhật Thuộc tính Xem Bản trình chiếu trong Java

Giới thiệu

Chế độ xem bình thường bao gồm ba vùng nội dung: slide, một vùng nội dung bên và một vùng nội dung phía dưới. Các thuộc tính liên quan đến vị trí của các vùng nội dung khác nhau. Thông tin này cho phép ứng dụng lưu trạng thái xem vào tệp, để khi mở lại, chế độ xem sẽ ở cùng trạng thái như lần cuối cùng bản trình chiếu được lưu.

Phương thức IViewProperties.getNormalViewProperties đã được thêm vào để cung cấp quyền truy cập vào các thuộc tính chế độ xem bình thường của bản trình chiếu.

Các giao diện INormalViewProperties, INormalViewRestoredProperties và các thành phần con của chúng, SplitterBarStateType enum đã được bổ sung.

Về INormalViewProperties

Biểu diễn các thuộc tính chế độ xem bình thường.

Các phương thức getShowOutlineIconssetShowOutlineIcons chỉ định xem ứng dụng có nên hiển thị biểu tượng khi hiển thị nội dung đề cương trong bất kỳ vùng nội dung nào của chế độ xem bình thường hay không.

Các phương thức getSnapVerticalSplittersetSnapVerticalSplitter chỉ định xem thanh chia dọc có nên tự động thu gọn khi vùng bên đủ nhỏ hay không.

Thuộc tính getPreferSingleViewsetPreferSingleView chỉ định người dùng có muốn xem một vùng nội dung duy nhất chiếm toàn bộ cửa sổ thay vì chế độ xem bình thường tiêu chuẩn với ba vùng nội dung hay không. Nếu bật, ứng dụng có thể chọn hiển thị một trong các vùng nội dung trên toàn bộ cửa sổ.

Các phương thức getVerticalBarStategetHorizontalBarState xác định trạng thái mà thanh chia dọc hoặc ngang sẽ được hiển thị. Thanh chia ngang tách slide khỏi vùng nội dung phía dưới slide, thanh chia dọc tách slide khỏi vùng nội dung bên. Các giá trị có thể là: SplitterBarStateType.Minimized, SplitterBarStateType.MaximizedSplitterBarStateType.Restored.

Các phương thức getRestoredLeftgetRestoredTop xác định kích thước của vùng slide phía trên hoặc bên của chế độ xem bình thường, khi giá trị SplitterBarStateType.Restored được áp dụng cho getVerticalBarStategetHorizontalBarState tương ứng.

Về việc khôi phục INormalViewProperties

Xác định kích thước của vùng slide (chiều rộng khi là con của getRestoredTop, chiều cao khi là con của getRestoredLeft) của chế độ xem bình thường, khi vùng này có kích thước khôi phục biến đổi (không phải thu gọn cũng không tối đa).

Phương thức getDimensionSize chỉ định kích thước của vùng slide (chiều rộng khi là con của restoredTop, chiều cao khi là con của restoredLeft).

Phương thức getAutoAdjust chỉ định liệu kích thước của vùng nội dung bên có nên điều chỉnh để bù cho kích thước mới khi thay đổi kích thước cửa sổ chứa chế độ xem trong ứng dụng hay không.

Một ví dụ dưới đây cho thấy cách truy cập thuộc tính ViewProperties.getNormalViewProperties cho một bản trình chiếu.

Presentation pres = new Presentation();
try {
    pres.getViewProperties().getNormalViewProperties().setHorizontalBarState(SplitterBarStateType.Restored);
    pres.getViewProperties().getNormalViewProperties().setVerticalBarState(SplitterBarStateType.Maximized);
    
    // Khôi phục các thuộc tính xem của bản trình chiếu
    pres.getViewProperties().getNormalViewProperties().getRestoredTop().setAutoAdjust(true);
    pres.getViewProperties().getNormalViewProperties().getRestoredTop().setDimensionSize(80);
    pres.getViewProperties().getNormalViewProperties().setShowOutlineIcons(true);

    pres.save("presentation_normal_view_state.pptx", SaveFormat.Pptx);
} finally {
    pres.dispose();
}

Đặt Giá trị Phóng đại Mặc định

Để đặt các thuộc tính chế độ xem, vui lòng thực hiện các bước sau:

  1. Tạo một thể hiện của lớp Presentation.
  2. Đặt View Properties cho Presentation.
  3. Ghi bản trình chiếu dưới dạng tệp PPTX.
    Trong ví dụ dưới đây, chúng tôi đã đặt giá trị phóng đại cho chế độ xem slide cũng như chế độ xem ghi chú.
Presentation presentation = new Presentation();
try {
    // Thiết lập các thuộc tính xem của bản trình chiếu
    presentation.getViewProperties().getSlideViewProperties().setScale(100); // Giá trị phóng đại tính bằng phần trăm cho chế độ xem slide
    presentation.getViewProperties().getNotesViewProperties().setScale(100); // Giá trị phóng đại tính bằng phần trăm cho chế độ xem ghi chú 

    presentation.save("Zoom_out.pptx", SaveFormat.Pptx);
} finally {
    presentation.dispose();
}

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

Tôi có thể đặt các cài đặt chế độ xem khác nhau cho các phần khác nhau của bản trình chiếu không?

Cài đặt chế độ xem được định nghĩa ở mức độ bản trình chiếu (Normal View/Slide View), không phải theo phần, vì vậy một bộ tham số duy nhất áp dụng cho toàn bộ tài liệu khi mở.

Tôi có thể định trước các trạng thái chế độ xem khác nhau cho các người dùng khác nhau không?

Không. Các cài đặt được lưu trong tệp và được chia sẻ. Các ứng dụng xem có thể tôn trọng sở thích của người dùng, nhưng tệp chứa một bộ thuộc tính chế độ xem duy nhất.

Tôi có thể chuẩn bị một mẫu với các View Properties đã định trước để các bản trình chiếu mới mở theo cùng cách không?

Có. Vì view properties được lưu ở mức độ bản trình chiếu, bạn có thể nhúng chúng vào mẫu và tạo tài liệu mới từ mẫu đó với cùng cấu hình chế độ xem ban đầu.