POI在导出的EXCEL中嵌入图片

 string filename = ComMethod.ObjToString(Table1.Rows[index]["files"]);    

  if (!string.IsNullOrEmpty(filename))                  

   {                       

  string path = Server.MapPath(ConfigurationManager.AppSettings["ArtworkFile"]);                     

    string readpath = path + filename;                       

  FileInfo file = new System.IO.FileInfo(readpath);                        

if (!file.Exists)                        

{                            

ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>alert('" + readpath + ",该文档不存在!');</script>");                    

     }

                   

     byte[] bytes = System.IO.File.ReadAllBytes(readpath);                         //byte[] bytes = System.IO.File.ReadAllBytes("E:\\ttt\\Chrysanthemum.jpg");                         int pictureIdx = hssfworkbook.AddPicture(bytes, PictureType.JPEG);

                        // Create the drawing patriarch.  This is the top level container for all shapes.                         HSSFPatriarch patriarch = (HSSFPatriarch)excelSheet.CreateDrawingPatriarch();

                        //add a picture,hssfclientanchor包含8个参数,其中,后面四个参数分别指嵌入图片的位置                         HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 1023, 0, (short)(2 + tablesize.Rows.Count), 5, 11, (short)(startrow + deletecount1));

                        patriarch.CreatePicture(anchor, pictureIdx);                     }

posted @ 2012-11-08 12:46  星羽  阅读(561)  评论(0编辑  收藏  举报