zoukankan      html  css  js  c++  java
  • 转。。原理同样支持 delphi

    我用C#导出excel 带图片,用office2003 正常,但换成office 2007 时,我指定多个单元格分别插入图片,这个图片不在此单元格内,这些图片全都集中在一起,在一个位置上。很奇怪,看起来也不是某个单元格
    我导出图片的方法如下:
      ///
            /// 将图片插入到指定的单元格位置。
            /// 注意:图片必须是绝对物理路径
            ///
            /// 单元格名称,例如:B4
            /// 要插入图片的绝对路径。
            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);
            }

    解决方法是

    Excel.Pictures pics=(Excel.Pictures)worksheet.Pictures(Type.Missing);//建立图片集合对象

     int TD=1;
     int p=1;
    Range range_1 =range=worksheet.get_Range('A'+TD.ToString(),'A'+TD.ToString());
         //获取填充单元格范围
          for 循环   

    {    
          pics.Insert(picPath,Type.Missing);//获取图片

          Excel.Picture pic = (Excel.Picture )pics.Item(p);//建立图片集合某一图片对象

           pic.Left = (double)range_1.Left;
           pic.Top = (double)range_1.Top;
           pic.Height =(double)range_1.Height;
           pic.Width =(double)range_1.Width;
           TD=TD+1;
           p=p+1; 

    }

    关键在于pics一定要在多个图片循环插入的外面,同时要给每一张图片的left ,top 附成插入单元格的left top

    这样在2007中,才能把图片插入到指定位置

  • 相关阅读:
    在Ubuntu上安装PHPStudy组件
    手把手教你在Ubuntu上分别安装Nginx、PHP和Mysql
    ErrorKiller:Failed to decode response: zlib_decode(): data error
    HTTP和FTP上传文件的区别
    关于HTTP,你知道哪些?
    史上最全的FTP网址
    深入解读TCP/IP
    nefu 462 fib组合
    MZL's xor
    The Highest Mark(01背包)
  • 原文地址:https://www.cnblogs.com/chjb2007/p/4775219.html
Copyright © 2011-2022 走看看