如何绘制和格式化一条线?

How to draw and format a line?

我正在尝试在 PowerPoint 演示文稿中画一条线。我无法获得所需的颜色、粗细、zorder 组合和命名。

我有两种画线的方法。

第一个:

Set oLine = MyDocument.Shapes.AddLine(MyShape.Left + MyShape.Width, MyShape.Top + (MyShape.Height * 0.5) - 5, MyDocument.Shapes(lineName).Left, MyDocument.Shapes(lineName).Top + (0.5 * MyDocument.Shapes(lineName).Height)).Line
            
With oLine
    .ZOrder (msoSendToBack)
    .Line.Weight = 7
    .Fill.ForeColor.RGB = RGB(0, 0, 0)
    .Name = "Line"
End With

有了这个,只有 zorder 可以工作。线条的颜色是蓝色阴影(我相信之前在 PowerPoint 中使用过)。

第二个:

With MyDocument.Shapes.AddLine(MyShape.Left + MyShape.Width, MyShape.Top + (MyShape.Height * 0.5), MyDocument.Shapes(lineName).Left, MyDocument.Shapes(lineName).Top + (0.5 * MyDocument.Shapes(lineName).Height)).Line
    .ForeColor.RGB = RGB(0, 0, 0)
    .Weight = 5
End With

这给出了所需的颜色和重量,但我找不到对形状进行 zorder 或命名的方法。

如何实现我想要的所有组合?

线条不使用填充,仅使用二维形状。

如果您将长命令(例如以 Set oLine 开头的命令)分解为更小的块,直到您开始工作,就更容易发现错误。您省略了有关您从中获取职位的 MyShape 的信息,但这里是您运行的代码的修订版本:

Sub FormatLine()
    Dim oLine As Shape
    Set oLine = ActivePresentation.Slides(1).Shapes.AddLine(BeginX:=10, BeginY:=10, EndX:=40, EndY:=40)
            
    With oLine
        .ZOrder (msoSendToBack)
        .Line.Weight = 7
        .Line.ForeColor.RGB = RGB(0, 0, 0)
        .Name = "Line3"
    End With
End Sub