在 Python via Java 中检索和更新演示文稿视图属性
介绍
正常视图由三个内容区域组成:幻灯片本身、侧边内容区域和底部内容区域。正常视图属性描述这些内容区域的位置。此信息允许应用程序将其视图状态保存到文件中,以便重新打开时视图保持与上次保存时相同的状态。
已添加方法 ViewProperties.getNormalViewProperties 以提供对演示文稿的正常视图属性的访问。
已添加 NormalViewProperties、NormalViewRestoredProperties 类以及 SplitterBarStateType 枚举。
关于 NormalViewProperties
表示正常视图属性。
方法 getShowOutlineIcons 和 setShowOutlineIcons 指定在正常视图模式的任意内容区域显示大纲内容时,应用程序是否应显示图标。
方法 getSnapVerticalSplitter 和 setSnapVerticalSplitter 指定当侧边区域足够小时时,垂直分割条是否应自动收缩至最小状态。
方法 getPreferSingleView 和 setPreferSingleView 指定用户是否更倾向于在整个窗口显示单一内容区域,而不是标准的包含三个内容区域的正常视图。如果启用,应用程序可能会选择将其中一个内容区域占满整个窗口。
方法 getVerticalBarState 和 getHorizontalBarState 指定水平或垂直分割条应显示的状态。水平分割条将幻灯片与幻灯片下方的内容区域分开;垂直分割条将幻灯片与侧边内容区域分开。可能的取值为:SplitterBarStateType.Minimized、SplitterBarStateType.Maximized 和 SplitterBarStateType.Restored。
方法 getRestoredLeft 和 getRestoredTop 指定在将 SplitterBarStateType.Restored 值应用于 getVerticalBarState 和 getHorizontalBarState 时,正常视图的侧边或顶部幻灯片区域的大小。
关于恢复 NormalViewProperties
指定当区域处于可变的恢复大小(既非最小化也非最大化)时,正常视图中幻灯片区域的尺寸(作为 getRestoredTop 的子项时为宽度,作为 getRestoredLeft 的子项时为高度)。
方法 getDimensionSize 指定幻灯片区域的大小(作为 getRestoredTop 的子项时为宽度,作为 getRestoredLeft 的子项时为高度)。
方法 getAutoAdjust 指定在调整包含视图的窗口大小时,侧边内容区域的尺寸是否应随之补偿。
下面的示例展示了如何访问演示文稿的 ViewProperties.getNormalViewProperties。
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat, SplitterBarStateType
presentation = Presentation()
try:
normal_view_properties = presentation.getViewProperties().getNormalViewProperties()
normal_view_properties.setHorizontalBarState(SplitterBarStateType.Restored)
normal_view_properties.setVerticalBarState(SplitterBarStateType.Maximized)
# 恢复演示文稿的视图属性。
normal_view_properties.getRestoredTop().setAutoAdjust(True)
normal_view_properties.getRestoredTop().setDimensionSize(80)
normal_view_properties.setShowOutlineIcons(True)
presentation.save("presentation_normal_view_state.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
设置默认缩放值
Note
Aspose.Slides for Python via Java 支持设置默认缩放值,以便在打开演示文稿时已自动应用。可以通过设置演示文稿的 ViewProperties 来实现。可以以编程方式配置 getSlideViewProperties 和 getNotesViewProperties。在本主题中,我们将通过示例演示如何在 Aspose.Slides 中为 Presentation 设置 View Properties。要设置视图属性,请按照以下步骤操作:
- 创建一个 Presentation 类的实例。
- 设置 Presentation 的 View Properties。
- 将演示文稿写入为 PPTX 文件。
在下面的示例中,我们为幻灯片视图和备注视图都设置了缩放值。
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Presentation, SaveFormat
presentation = Presentation()
try:
# 设置演示文稿的视图属性。
presentation.getViewProperties().getSlideViewProperties().setScale(100) # 幻灯片视图的缩放百分比。
presentation.getViewProperties().getNotesViewProperties().setScale(100) # 备注视图的缩放百分比。
presentation.save("Zoom_out.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
常见问题
我可以为演示文稿的不同章节设置不同的视图设置吗?
View settings 在演示文稿级别定义(Normal View/Slide View),而不是在每个章节单独定义,因此在打开文档时整个文档使用同一组参数。
我可以为不同的用户预定义不同的视图状态吗?
不能。设置存储在文件中并共享。查看器应用程序可以尊重用户偏好,但文件本身只包含一套视图属性。
我可以准备一个带有预定义 View Properties 的模板,以便新演示文稿以相同方式打开吗?
可以。由于 view properties 存储在演示文稿级别,您可以将其嵌入模板中,并基于该模板创建新文档,以获得相同的初始视图配置。