当前位置: 首页 > article >正文

PPT中添加多个图片

在ppt中插入多个图片并设置图片固定位置和大小

Sub InsertImagesFixedPosition()
    Dim pptSlide As Slide
    Dim pptImage As Shape
    Dim imgPath As String
    Dim i As Integer
    Dim basePath As String
    Dim imgPaths() As String
    Dim imgCount As Integer
    
    ' 基础路径
    basePath = "C:\Users\xx\Desktop\picture\"
    
    ' 假设图片数量为 10,根据实际情况调整
    imgCount = 10
    
    ' 动态调整数组大小
    ReDim imgPaths(0 To imgCount - 1)
    
    ' 生成图片路径
    For i = 0 To imgCount - 1
        imgPaths(i) = basePath & (i + 1) & ".png"
    Next i
    
    ' 图片大小和位置(固定位置)
    Dim imgWidth As Single, imgHeight As Single
    Dim imgLeft As Single, imgTop As Single
    imgWidth = 200    ' 图片宽度
    imgHeight = 150   ' 图片高度
    imgLeft = 100     ' 图片左边距
    imgTop = 100      ' 图片顶边距
    
    ' 检查路径是否存在
    Dim invalidPaths As String
    invalidPaths = ""
    For i = LBound(imgPaths) To UBound(imgPaths)
        If Dir(imgPaths(i)) = "" Then
            invalidPaths = invalidPaths & imgPaths(i) & vbCrLf
        End If
    Next i
    
    If invalidPaths <> "" Then
        MsgBox "以下文件不存在,请检查:" & vbCrLf & invalidPaths, vbCritical
        Exit Sub
    End If
    
    ' 循环插入图片
    For i = LBound(imgPaths) To UBound(imgPaths)
        imgPath = imgPaths(i)
        Debug.Print imgPath ' 输出路径到即时窗口
        
        ' 添加新的幻灯片
        Set pptSlide = ActivePresentation.Slides.Add(ActivePresentation.Slides.Count + 1, ppLayoutBlank)
        
        ' 插入图片
        On Error Resume Next
        Set pptImage = pptSlide.Shapes.AddPicture(FileName:=imgPath, _
                                                  LinkToFile:=msoFalse, _
                                                  SaveWithDocument:=msoTrue, _
                                                  Left:=imgLeft, _
                                                  Top:=imgTop, _
                                                  Width:=imgWidth, _
                                                  Height:=imgHeight)
        If Err.Number <> 0 Then
            MsgBox "插入图片失败:" & imgPath & vbCrLf & "错误:" & Err.Description, vbCritical
            Err.Clear
            Exit Sub
        End If
        On Error GoTo 0
    Next i
    
    MsgBox "图片已插入到每张幻灯片!", vbInformation
End Sub

在 PowerPoint VBA 中,设置图片大小和位置的单位是 点(Point,Pt)。1 点等于 1/72 英寸,也就是 0.352777 毫米。


具体含义

  • 宽度(Width)高度(Height): 控制图片的宽度和高度,单位为点。例如:

    • Width = 200 表示图片宽度约为 200 点,即 2.78 英寸(200 ÷ 72)。
    • Height = 150 表示图片高度约为 150 点,即 2.08 英寸(150 ÷ 72)。
  • 左边距(Left)顶边距(Top): 控制图片在幻灯片上的位置,单位为点。例如:

    • Left = 100 表示图片左边缘距离幻灯片左边框约为 1.39 英寸(100 ÷ 72)。
    • Top = 100 表示图片上边缘距离幻灯片顶部约为 1.39 英寸(100 ÷ 72)。

转换示例

假设需要设置:

  • 图片宽度为 5 厘米
  • 图片高度为 3 厘米
  • 左上角距离幻灯片左边和顶部的距离为 2 厘米

计算方法:

  1. 将厘米转换为点:1 厘米 ≈ 28.35 点。
    • 宽度:5 × 28.35 ≈ 141.75 点。
    • 高度:3 × 28.35 ≈ 85.05 点。
    • 左边距:2 × 28.35 ≈ 56.7 点。
    • 顶边距:2 × 28.35 ≈ 56.7 点。


http://www.kler.cn/a/443823.html

相关文章:

  • 多模态医学图像融合概述
  • MySQL深度解析:高效查询优化与实战案例
  • 如何实现单例模式?
  • druid与pgsql结合踩坑记
  • 微信小程序开发入门
  • airflow docker 安装
  • 解决echarts图宽度自适应问题,设置100%宽度显示100px
  • UDP网络编程套接
  • Java.10--IO流
  • 修改openjdk17 java/lang/String.java 类源码,增加一个native本地方法打印固定字符串功能
  • 图书馆管理系统(一)基于jquery、ajax
  • Linux 显示系统活动进程状态命令 ps 详细介绍
  • 如何有效修复ffmpeg.dll错误:一站式解决方案指南
  • Linux dd 命令详解:工作原理与实用指南(C/C++代码实现)
  • 单节点calico性能优化
  • springboot444新冠物资管理系统的设计与实现(论文+源码)_kaic
  • Databend 产品月报(2024年11月)
  • 【深度学习之三】FPN与PAN网络详解
  • 为SSH2协议服务器的用户设置密钥
  • “视觉革命:走进可视化AI识别系统的智能世界
  • 深度学习项目的 Python 实现复现指南
  • Day27 - 大模型微调,LLaMA搭建
  • 初学stm32 ——— 串口通信
  • elementui在任意页面点击消息,弹出消息对应页面处理弹窗
  • 2.metagpt中的软件公司智能体 (ProductManager 角色)
  • @Resource与@Autowire