C.2 加载样式文件
要加载样式文件,请从菜单 Tools 菜单图标。Tools 中选择 Load Style File...。在对话框中,导航到样式文件的位置,选择该文件,然后单击 Open。它用于当前演示文稿中的任何新图表。
例如,从 think-cell 安装目录中的目录加载示例样式文件后,颜色和配色方案属性控件将包含自定义项。example_style_complex.xmlstyles
如果要在现有图表中应用样式的颜色或颜色方案,则需要手动执行此操作。
C.2.1 以编程方式加载样式文件
您还可以以编程方式加载样式文件,例如,作为准备新模板或更新模板的工作流程的一部分。API 调用的更精确度还允许在加载样式文件时指定其他选项,例如针对特定的自定义布局,甚至将样式限制为自定义布局的矩形区域,以及从自定义布局中删除它们并检查加载到主布局或自定义布局中的样式的名称。
think-cell 的 API 已集成到 Office Automation 模型中,因此可以从任何可用于 Office 编程的语言(如 Visual Basic for Applications (VBA) 或 C#))访问它。有关详细说明,请参阅 F.1 入门。
假设您有一个自定义布局,该布局对幻灯片的左侧和右侧使用不同的背景颜色。右侧与演示文稿其余部分的背景匹配,因此在母版中设置的样式在此处应用是很好的。但是,左侧使用不同的背景,因此修改后的样式是合适的。在这种情况下,您将用于为整个演示文稿设置一个样式文件。接下来,您将用于仅为相应自定义布局的左侧设置不同的样式。LoadStyleLoadStyleForRegion
以下部分介绍了可用的 API 调用。它们是 PowerPoint 中 think-cell 加载项对象的方法。
C.2.2 LoadStyle
C.2.2.1 签名
VBA
tcPpAddIn.LoadStyle( _ CustomLayoutOrMaster As Object, _ FileName As String )
C#
void tcPpAddIn.LoadStyle( object CustomLayoutOrMaster, string FileName
C.2.2.2 描述
此函数将样式文件 at 中包含的样式加载到主布局或自定义布局中,通过参数 .FileNameCustomLayoutOrMaster
CustomLayoutOrMaster必须是 CustomLayout 或 Master。
当应用于已设置区域样式的自定义布局时,区域样式将被删除。这意味着,在加载仅限于某个区域的样式之前,您需要使用此函数加载应应用于幻灯片其余部分的样式。
当应用于母版时,加载到该母版中包含的自定义布局中的任何样式(区域和无限制)都将被删除。这意味着,在使用此功能加载应用于特定自定义布局的样式之前,您需要将应应用于自定义布局的样式加载到没有特定样式的样式中。
C.2.2.3 示例
若要使用此示例,请将以下代码添加到 PowerPoint 中的模块中。
Option ExplicitSub LoadStyle_Sample() ' Get the think-cell add-in object Dim tcPpAddIn As Object Set tcPpAddIn = Application.COMAddIns("thinkcell.addin").Object Dim master As MasterSet master = Application.ActivePresentation.Designs(1).SlideMasterDim style As Stringstyle = "C:somepathstylesstyle.xml"Call tcPpAddIn.LoadStyle(master, style)End Sub
C.2.3 LoadStyleForRegion
C.2.3.1 签名
VBA
tcPpAddIn.LoadStyleForRegion( _ CustomLayout As PowerPoint.CustomLayout, _ FileName As String, _ Left as Single, _ Top as Single, _ Width as Single, _ Height as Single _ )
C#
void tcPpAddIn.LoadStyleForRegion( PowerPoint.CustomLayout CustomLayout, string FileName, float Left, float Top, float Width, float Height );
C.2.3.2 描述
此函数将样式文件加载到自定义布局中,并将其限制为由 、、 指定的区域。在幻灯片的其余部分,将应用加载到母版中的样式,或之前加载到自定义版式中的样式。FileNameCustomLayoutLeftTopWidthHeightLoadStyle
参数 以 PowerPoint 点为单位给出。并分别指定区域的左边缘和上边缘与自定义布局的左边缘和上边缘的距离。通常,您会将它们设置为总幻灯片高度和宽度的分数。例如,对于覆盖自定义布局右三分之二的区域,您可以设置LeftTopWidthHeightLeftTop
Left = CustomLayout.Width / 3Top = 0Width = CustomLayout.Width * 2 / 3Height = CustomLayout.Height
您还可以手动将形状添加到幻灯片或自定义布局中,以编程方式查询其属性,并使用值 with 将样式限制为形状覆盖的同一区域。LeftTopWidthHeightLoadStyleForRegion
think-cell 支持每个自定义布局最多两种样式。一个设置并涵盖不限于某个区域的所有内容,另一个设置有 。LoadStyleLoadStyleForRegion
C.2.3.3 示例
若要使用此示例,请将以下代码添加到 PowerPoint 中的模块中
Option Explicit Sub LoadStyleForRegion_Sample() ' Get the think-cell add-in object Dim tcPpAddIn As Object Set tcPpAddIn = Application.COMAddIns("thinkcell.addin").Object Dim layout As CustomLayout Set layout = Application.ActivePresentation.Designs(1).SlideMaster.CustomLayouts(2) ' Define a region covering the left half of the custom layout Dim left, top, width, height As Single left = 0 top = 0 width = layout.Width / 2 height = layout.Height Dim style As String style = "C:somepathstylesstyle.xml" Call tcPpAddIn.LoadStyleForRegion(layout, style, left, top, width, height) End Sub
C.2.4 删除样式
C.2.4.1 签名
tcPpAddIn.RemoveStyles( _ CustomLayout As PowerPoint.CustomLayout _ )
C#
void tcPpAddIn.RemoveStyles( PowerPoint.CustomLayout CustomLayout );
C.2.4.2 描述
此函数从自定义布局中删除所有样式 。之后,将应用加载到 master 中的样式。可能会有一个样式加载到自定义布局中,而另一个样式仅限于自定义布局的特定区域。删除所有样式时,两者都将被删除。加载到主控件中的样式无法删除,因为始终需要与主控件关联的有效样式。它可以被其他样式文件覆盖。CustomLayoutRemoveStyles
C.2.4.3 示例
若要使用此示例,请将以下代码添加到 PowerPoint 中的模块中
Option ExplicitSub RemoveStyles_Sample() ' Get the think-cell add-in object Dim tcPpAddIn As Object Set tcPpAddIn = Application.COMAddIns("thinkcell.addin").Object Dim layout As CustomLayoutSet layout = Application.ActivePresentation.Designs(1).SlideMaster.CustomLayouts(2)Call tcPpAddIn.RemoveStyles(layout)End Sub
C.2.5 GetStyleName
在 think-cell 13 及更高版本中受支持。
C.2.5.1 签名
VBA
tcPpAddIn.GetStyleName( _ CustomLayoutOrMaster As Object _ ) As String
C#
string tcPpAddIn.GetStyleName( object CustomLayoutOrMaster );
C.2.5.2 描述
此函数返回加载到 CustomLayout 或 Master 或 .此名称与相应样式文件的元素属性中指定的名称相同(请参阅 D.2.1 样式)。CustomLayoutOrMastername
当没有样式加载到 .请注意,当 think-cell 处于活动状态时,主控始终会加载样式,并且样式的名称不能为空。CustomLayoutOrMaster
如果为 返回名称,则它是使用 C.2.2 LoadStyle 加载到其中的样式的名称,而不是使用 C.2.3 LoadStyleForRegion(如果有)加载的样式的名称。CustomLayout
C.2.5.3 示例
若要使用此示例,请将以下代码添加到 PowerPoint 中的模块中
Option ExplicitSub GetStyleName_Sample() ' Get the think-cell add-in object Dim tcPpAddIn As Object Set tcPpAddIn = Application.COMAddIns("thinkcell.addin").Object ' Get the Master of the first slide of the current presentation Dim master As Master Set master = Application.ActivePresentation.Slides(1).Master ' Print the name of the style loaded to the debug console Dim name As String name = tcPpAddIn.GetStyleName(master) Debug.Print nameEnd Sub
-
编程
+关注
关注
88文章
3627浏览量
93809 -
Think
+关注
关注
0文章
8浏览量
7781
原文标题:think-cell:自定义 think-cell(二)
文章出处:【微信号:哲想软件,微信公众号:哲想软件】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论