取得與更新 Java 中的簡報檢視屬性
簡介
正常檢視由三個內容區域組成:投影片本身、側邊內容區域,以及底部內容區域。這些屬性與不同內容區域的定位相關。此資訊允許應用程式將檢視狀態儲存至檔案,從而在重新開啟時,檢視保持與上次儲存時相同的狀態。
已新增方法IViewProperties.getNormalViewProperties,以提供對簡報的正常檢視屬性的存取。
已新增INormalViewProperties、INormalViewRestoredProperties介面及其衍生類別,以及SplitterBarStateType列舉。
關於 INormalViewProperties
代表正常檢視屬性。
方法getShowOutlineIcons與setShowOutlineIcons指定當在正常檢視模式的任何內容區域顯示大綱內容時,應用程式是否應顯示圖示。
方法getSnapVerticalSplitter與setSnapVerticalSplitter指定當側邊區域足夠小時,垂直分割條是否應自動貼齊至最小化狀態。
屬性getPreferSingleView與setPreferSingleView指定使用者是否偏好在整個視窗顯示單一內容區域,而非具有三個內容區域的標準正常檢視。若啟用,應用程式可能會選擇將其中一個內容區域顯示於整個視窗。
方法getVerticalBarState與getHorizontalBarState指定水平或垂直分割條應顯示的狀態。水平分割條將投影片與下方內容區域分開,垂直分割條將投影片與側邊內容區域分開。可能的值有SplitterBarStateType.Minimized、SplitterBarStateType.Maximized以及SplitterBarStateType.Restored。
方法getRestoredLeft與getRestoredTop指定正常檢視中頂部或側邊投影片區域的尺寸,當對getVerticalBarState與getHorizontalBarState應用SplitterBarStateType.Restored值時。
關於還原 INormalViewProperties
指定正常檢視中投影片區域的尺寸(若為getRestoredTop的子項則為寬度,若為getRestoredLeft的子項則為高度),當該區域為可變的還原大小(非最小化亦非最大化)時。
方法getDimensionSize指定投影片區域的大小(若為 restoredTop 的子項則為寬度,若為 restoredLeft 的子項則為高度)。
方法getAutoAdjust指定在調整包含檢視的視窗大小時,側邊內容區域的尺寸是否應自動調整以補償新的大小。
以下範例說明如何存取簡報的ViewProperties.getNormalViewProperties屬性。
Presentation pres = new Presentation();
try {
pres.getViewProperties().getNormalViewProperties().setHorizontalBarState(SplitterBarStateType.Restored);
pres.getViewProperties().getNormalViewProperties().setVerticalBarState(SplitterBarStateType.Maximized);
// 復原簡報的檢視屬性
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();
}
設定預設縮放值
要設定檢視屬性,請依照以下步驟操作:
- 建立Presentation類別的實例。
- 設定[Presentation]的View Properties。
- 將簡報寫入PPTX檔案。以下範例中,我們已設定投影片檢視與備註檢視的縮放值。
Presentation presentation = new Presentation();
try {
// 設定簡報的檢視屬性
presentation.getViewProperties().getSlideViewProperties().setScale(100); // 投影片檢視的縮放值(百分比)
presentation.getViewProperties().getNotesViewProperties().setScale(100); // 備註檢視的縮放值(百分比)
presentation.save("Zoom_out.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
常見問題
我可以為簡報的不同章節設定不同的檢視設定嗎?
檢視設定位於簡報層級(正常檢視/投影片檢視),而非每個章節。因此在開啟文件時,整個文件只會套用單一組參數。
我能為不同使用者預先定義不同的檢視狀態嗎?
**不能。**設定儲存在檔案中,且為共用。檢視程式可遵循使用者偏好,但檔案本身僅包含一組檢視屬性。
我可以準備一個已預設檢視屬性的範本,使新簡報以相同方式開啟嗎?
可以。因為檢視屬性儲存在簡報層級,您可以將它們嵌入範本,並以此建立新文件,讓其具有相同的初始檢視設定。