C# 向Excel插入图片

<!--StartFragment-->/// <summary>
    /// 将图片插入到指定的单元格位置。
    /// 注意:图片必须是绝对物理路径
    /// </summary>
    /// <param name="RangeName">单元格名称,例如:B4</param>
    /// <param name="PicturePath">要插入图片的绝对路径。</param>
    public void InsertPicture( string RangeName, string PicturePath )
    {
      m_objRange = m_objSheet.get_Range(RangeName, m_objOpt);
      m_objRange.Select();
      Excel.Pictures pics = (Excel.Pictures)m_objSheet.Pictures(m_objOpt);
      pics.Insert(PicturePath, m_objOpt);
    }

    /// <summary>
    /// 将图片插入到指定的单元格位置,并设置图片的宽度和高度。
    /// 注意:图片必须是绝对物理路径
    /// </summary>
    /// <param name="RangeName">单元格名称,例如:B4</param>
    /// <param name="PicturePath">要插入图片的绝对路径。</param>
    /// <param name="PictuteWidth">插入后,图片在Excel中显示的宽度。</param>
    /// <param name="PictureHeight">插入后,图片在Excel中显示的高度。</param>
    public void InsertPicture( string RangeName, string PicturePath, float PictuteWidth, float PictureHeight )
    {
      m_objRange = m_objSheet.get_Range(RangeName, m_objOpt);
      m_objRange.Select();
      float PicLeft, PicTop;
      PicLeft = Convert.ToSingle(m_objRange.Left);
      PicTop = Convert.ToSingle(m_objRange.Top);
      //参数含义:
      //图片路径
      //是否链接到文件
      //图片插入时是否随文档一起保存
      //图片在文档中的坐标位置(单位:points)
      //图片显示的宽度和高度(单位:points)
      //参数详细信息参见:http://msdn2.microsoft.com/zh-cn/library/aa221765(office.11).aspx
      m_objSheet.Shapes.AddPicture(PicturePath, Microsoft.Office.Core.MsoTriState.msoFalse,
        Microsoft.Office.Core.MsoTriState.msoTrue, PicLeft, PicTop, PictuteWidth, PictureHeight);
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值