在图像上设置透明颜色

时间:2019-08-27 13:16:02

标签: vba powerpoint

我想导入一组彼此稍微偏移的图形(作为jpeg图像)以构建表面图。由于每张图像都覆盖在前一张图像上,因此我需要设置其透明颜色,以便它们全部显示出来。我无法设置透明度。

n = 1
Do While MyFile <> ""   ' Start the loop.
    myDocument.Shapes.AddPicture _
        FileName:=MyPath & "\" & MyFile, _
        LinkToFile:=msoTrue, _
        SaveWithDocument:=msoTrue, _
        Left:=PosLeft, Top:=PosTop, Width:=SpecWidth, Height:=SpecHeight

    With myDocument.Shapes(n)
        With .PictureFormat
            .TransparentBackground = msoTrue
            .TransparencyColor = vbBlack
        End With
        .Fill.Visible = msoFalse
    End With

    PosLeft = PosLeft + IncLeft
    PosTop = PosTop + IncTop
    MyFile = Dir()   ' Get next entry.
    n = n + 1
Loop

1 个答案:

答案 0 :(得分:0)

VBA对象模型中还没有透明性。您尝试使用的命令是为图像设置单一透明颜色的较旧方法。

可以使形状透明。如果为透明形状填充图片,则图片将变为透明。这是具有该解决方法的页面:Use VBA to Make a Picture Transparent in Microsoft Office