我正在使用一个小的VBA程序在后台应用一些文本。我可以应用水印,但是如果我在演示文稿中使用任何图像,那么水印就会在该图像后面。有没有办法让水印始终在前面。我使用下面的代码来应用水印:
Dim cntDesigns As Integer
cntDesigns = ActivePresentation.Designs.Count
For iter = 1 To cntDesigns
Dim curDesign As Design
Set curDesign = ActivePresentation.Designs.Item(iter)
' EnumerateMasters
Dim masterCount As Integer
masterCount = 1
Dim masters(100) As Master
Set masters(masterCount) = curDesign.SlideMaster
Dim cntLayouts As Integer
cntLayouts = curDesign.SlideMaster.CustomLayouts.Count
For Layout = 1 To cntLayouts
Dim curLayout As CustomLayout
Set curLayout = curDesign.SlideMaster.CustomLayouts(Layout)
If curLayout.DisplayMasterShapes = msoFalse Then
masterCount = masterCount + 1
Set masters(masterCount) = curLayout
End If
Next Layout
For masterIter = 1 To masterCount
Dim shape As shape
Set shape = masters(masterIter).Shapes.AddTextbox(msoTextOrientationHorizontal, 0#, 0#, 100#, 100#)
shape.TextEffect.Text = "Watermark"
shape.Height = 100
shape.Width = 100
shape.TextFrame2.WordWrap = msoTrue
shape.TextFrame2.WarpFormat = msoWarpFormat1
shape.Left = 100
shape.Top = 200
Next masterIter
Next iter发布于 2014-06-03 22:42:35
不,你放在东西上面的任何东西都会掩盖它。没有“保持这个形状在顶部”的命令。
但是,您可以捕获一个或多个可能经常发生的事件(例如,选择更改),并让该事件触发代码来查看幻灯片上的每个形状,并将水印形状移动到前面(如果还没有)。
https://stackoverflow.com/questions/24013871
复制相似问题