我正在尝试将文本框对齐在一个大型演示文稿中。每张幻灯片包含各种形状,但只有一个文本框,其中包含文本,我希望该文本框与幻灯片的中心对齐。目前,我有一行代码可以使文本中心在自己的文本框中对齐,但我想知道是否有一种方法可以在幻灯片中间制作文本框?
Sub TextSize()
Dim oSl As Slide
Dim oSh As Shape
With ActivePresentation
For Each oSl In .Slides
For Each oSh In oSl.Shapes
With oSh
If .HasTextFrame Then
If .TextFrame.HasText Then
.TextFrame.TextRange.Font.Size = 26.5
' change the code to make the text box centre aligned to the slide
.TextFrame.TextRange.ParagraphFormat.Alignment = ppAlignCenter
End If
End If
End With
Next
Next
End With
End Sub
答案 0 :(得分:2)
Gopal指出了你正确的方向。在您的代码将文本居中后,添加以下内容:
.Left = ActivePresentation.PageSetup.SlideWidth / 2 - .Width / 2
.Top = ActivePresentation.PageSetup.SlideHeight / 2 - .Height / 2
答案 1 :(得分:0)
虽然没有提及,但是如果你通过VBA代码在幻灯片上添加文本框(如this文档中所述),那么我猜文本框没有直接与幻灯片对齐的属性一种特殊的方式(在你的情况下集中)。
话虽如此,我还要指出一种可能的解决方法,可能是以比例比例设置文本框的顶部和左属性为演示文稿选择的幻灯片 高度和宽度。
我认为这应该集中对齐文本框。