• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
半壁江山
博客园    首页    新随笔    联系   管理    订阅  订阅

将图片插入到excel中

  1.  static void Main(string[] args)  
  2.         {  
  3.   
  4.             //说明:插入图片  
  5.   
  6.             //1.创建EXCEL中的Workbook           
  7.             IWorkbook myworkbook = new HSSFWorkbook();  
  8.   
  9.             //2.创建Workbook中的Sheet          
  10.             ISheet mysheet = myworkbook.CreateSheet("sheet1");  
  11.   
  12.             //第一步:读取图片到byte数组  
  13.             HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://img1.soufunimg.com/message/images/card/tuanproj/201511/2015112703584458_s.jpg");  
  14.   
  15.             byte[] bytes;  
  16.             using (Stream stream = request.GetResponse().GetResponseStream())  
  17.             {  
  18.                 using (MemoryStream mstream = new MemoryStream())  
  19.                 {  
  20.                     int count = 0;  
  21.                     byte[] buffer = new byte[1024];  
  22.                     int readNum = 0;  
  23.                     while ((readNum = stream.Read(buffer, 0, 1024)) > 0)  
  24.                     {  
  25.                         count = count + readNum;  
  26.                         mstream.Write(buffer, 0, 1024);  
  27.                     }  
  28.                     mstream.Position = 0;  
  29.                     using (BinaryReader br = new BinaryReader(mstream))  
  30.                     {  
  31.   
  32.                         bytes = br.ReadBytes(count);  
  33.                     }  
  34.                 }  
  35.             }  
  36.              
  37.             //第二步:将图片添加到workbook中  指定图片格式 返回图片所在workbook->Picture数组中的索引地址(从1开始)  
  38.             int pictureIdx = myworkbook.AddPicture(bytes, PictureType.JPEG);  
  39.   
  40.             //第三步:在sheet中创建画部  
  41.             IDrawing patriarch = mysheet.CreateDrawingPatriarch();  
  42.   
  43.             //第四步:设置锚点 (在起始单元格的X坐标0-1023,Y的坐标0-255,在终止单元格的X坐标0-1023,Y的坐标0-255,起始单元格行数,列数,终止单元格行数,列数)  
  44.             IClientAnchor anchor =patriarch.CreateAnchor(0,0,0,0,0,0,2,2);  
  45.   
  46.   
  47.             //第五步:创建图片  
  48.             IPicture pict = patriarch.CreatePicture(anchor, pictureIdx);  
  49.         
  50.             //6.保存         
  51.             FileStream file = new FileStream(@"E:\myworkbook11.xls", FileMode.Create);  
  52.             myworkbook.Write(file);  
  53.             file.Close();  
  54.         }  
  55.     }  

效果: 

posted @ 2016-08-25 14:00  半壁江山  阅读(488)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3