PPT中如何让每页的图片自动最大化显示(铺满屏幕)?

阿斌 7天前  软件  43

昨天晚上帮领导做一个PPT,每页里面插入了一张图片,然后每隔8秒自动轮播,要的是这么一种效果。结果问题来了,插入的图片尺寸不一,无法完全占满整页PPT,这样投出来之后效果就很差,因为有大量的空白处,能理解我的意思吗?就是我希望是每页里插入的每张图片能自动、批量最大化显示,投出来之后铺满整个屏幕。

1 个回答
  • 小何同志 7天前
    2

    给你一段代码,亲测无误!操作方法如下:

    打开 PowerPoint,按下 Alt + F11 打开 VBA 编辑器,点击菜单“插入-模块“,将以下代码粘贴进去:

    Sub 图片批量最大化()
        Dim sld As Slide
        Dim shp As Shape
        Dim slideWidth As Single
        Dim slideHeight As Single
        Dim ratio As Double
        Dim picRatio As Double
        
        slideWidth = ActivePresentation.PageSetup.slideWidth
        slideHeight = ActivePresentation.PageSetup.slideHeight
        
        For Each sld In ActivePresentation.Slides
            For Each shp In sld.Shapes
                ' 只处理图片
                If shp.Type = msoPicture Then
                    shp.LockAspectRatio = msoTrue
                    
                    ' 计算比例
                    picRatio = shp.Width / shp.Height
                    ratio = slideWidth / slideHeight
                    
                    ' 按比例放大以充满幻灯片
                    If picRatio > ratio Then
                        ' 图片较宽,以高度为准
                        shp.Height = slideHeight
                        shp.Width = shp.Height * picRatio
                    Else
                        ' 图片较高,以宽度为准
                        shp.Width = slideWidth
                        shp.Height = shp.Width / picRatio
                    End If
                    
                    ' 居中图片
                    shp.Left = (slideWidth - shp.Width) / 2
                    shp.Top = (slideHeight - shp.Height) / 2
                End If
            Next shp
        Next sld
        
        MsgBox "所有图片已最大化!", vbInformation
    End Sub

    此时关闭 VBA 窗口,回到 PPT 主界面,按 ALT+F8,弹出“宏”,选择我们刚刚植入的“图片批量最大化”,点击运行,即可实现自动、批量图片最大化显示。

    3 回复引用 引用
    • 探知网
      3
        立即登录 立即注册
返回