如何用 VBA 设置word文件中嵌入图像的亮度、对比度和清晰度?

对于内嵌图像比较多的文件,当这些文件具有相似的图像灰度分布时,往往需要给他们设置同样的亮度、对比度和清晰度属性,让它们具有比较理想的感观效果。以下就是可以自动设置图像上述属性的vba代码。

        'On Error Resume Next '忽略错误

        Dim myInline As InlineShape

        Application.ScreenUpdating = False

        For n = 1 To ActiveDocument.InlineShapes.Count

            Set myInline = ActiveDocument.InlineShapes(n)

                'myInline.PictureFormat.IncrementBrightness (0.2)

                'myInline.PictureFormat.IncrementContrast (0.4)

                Set myrange = myInline.ConvertToShape       '先换成浮动图形

                myrange.ScaleHeight 0.7, True, msoScaleFromMiddle '设置图片的尺寸
                myrange .ScaleWidth 0.7, True, msoScaleFromMiddle 

                With myrange.Fill.PictureEffects   '浮动图形才可应用填充图形效果,嵌入图形不可应用图形效果

                    Set sha = .Insert(msoEffectSharpenSoften)        '给图形应用锐化效果

                    sha.EffectParameters(1).Value = 0.7      '锐化+70%

                    Set brightnessContrast = .Insert(msoEffectBrightnessContrast)        '给图形应用亮度和对比度效果

                    'brightnessContrast.EffectParameters(1).Value = 0.2                   '亮度+20%

                    brightnessContrast.EffectParameters(2).Value = 0.5                  '对比度+50%

                End With

                myrange.ConvertToInlineShape       '再换成嵌入图形

                

        Next n

 

        Application.ScreenUpdating = True

你可能感兴趣的:(学习,vba,msword)