有没有办法在PowerPoint VSTO中创建样式来格式化文本,类似于Word文档可能的样式:
// document is of type Microsoft.Office.Interop.Word.Document
Style sectionHeadingExt = document.Styles.Add("myStyle");
sectionHeadingExt.set_BaseStyle(SectionHeadingInt);
sectionHeadingExt.Font.Size = 14;
sectionHeadingExt.Font.Color = WdColor.wdColorBlack;
sectionHeadingExt.Font.Bold = (int)MsoTriState.msoFalse;
sectionHeadingExt.ParagraphFormat.LineSpacingRule = WdLineSpacing.wdLineSpaceMultiple;
sectionHeadingExt.ParagraphFormat.LineSpacing = _application.LinesToPoints((float)1.11);
sectionHeadingExt.ParagraphFormat.SpaceBefore = 0;
sectionHeadingExt.ParagraphFormat.SpaceAfter = 0;
我需要创建一个自定义功能区选项卡,在那里添加一个按钮,当单击该按钮时,我需要相应地格式化所选段落:
GetCurrentParagraph().set_Style("myStyle");
我在Word AddIn中这样做了,但是可以使用PowerPoint吗?此外,我无法在PowerPoint中看到样式/更改样式选项(在Word中,它们显示在“主页”选项卡上)。
答案 0 :(得分:1)
Word具有样式功能; PowerPoint没有,因此不可能像在Word中那样执行此操作。
您可能需要编写代码来拾取和存储各种属性,这些属性决定了文本的外观(字体名称,大小,粗体/斜体,行间距,段落间距,颜色等)和代码将存储的属性应用于另一段文本。
(以及你的后续评论)......是的。
Dim oRng As TextRange
' Is text selected? If so, work with it, else quit:
With ActiveWindow.Selection
If .Type = ppSelectionText Then
Set oRng = .TextRange
Else
Exit Sub
End If
End With ' Selection
With oRng
With .Font
.Bold = True
.Size = 24 ' point
' and so on
End With
End With ' oRng