在 Android 上檢索與更新簡報檢視屬性
簡介
一般檢視由三個內容區域組成:投影片本身、側邊內容區域以及底部內容區域。屬性與不同內容區域的定位相關。此資訊讓應用程式能將檢視狀態儲存至檔案,從而在重新開啟時,檢視保持在最後一次儲存時的相同狀態。
已新增方法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();
}
常見問答
我能為簡報的不同章節設定不同的檢視設定嗎?
檢視設定是在簡報層級(一般檢視/投影片檢視)定義的,而非針對各章節。因此,單一套參數會套用於整個文件的開啟時。
我能為不同使用者預先定義不同的檢視狀態嗎?
不能。設定儲存在檔案中,所有使用者共用同一組檢視屬性。檢視程式可能會遵循使用者個人偏好,但檔案本身僅包含一組檢視屬性。
我能建立包含預先定義檢視屬性的範本,以便新簡報以相同方式開啟嗎?
可以。因為檢視屬性儲存在簡報層級,您可以將其嵌入範本,並以該範本建立新文件,以保持相同的初始檢視配置。