当前位置:软件学习 > Excel >>

C# 把excell 轉換成圖片

public  class CoverExcellToImage
    {
        private static string SAVEEXCELJPG = @"c:/temp/{0}.jpg";
        private static readonly string[] ArrRang = new string[] { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" };

      public static event TECOSFIS.SFIS.UpdateImage.ShowMessage eventShowMessage;
      public static string StrRouseFile = "";
      public static List<string> ListFileName = new List<string>();

      public static string GetExcel(string excelFilePath)
      {
          if (!System.IO.Directory.Exists("c:/temp")) {

              System.IO.Directory.CreateDirectory("c:/temp");
          }

          Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application();
          app.DisplayAlerts = false;
          object objMis = Type.Missing;
          Microsoft.Office.Interop.Excel.Workbook singleExcel = app.Workbooks.Open(excelFilePath, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis, objMis);
          try
          {
              StrRouseFile = excelFilePath;
              //wsheet.UsedRange.Select();
              if (eventShowMessage != null)
              {
                  eventShowMessage(1, singleExcel.Worksheets.Count);

              }
              for (int i = 1; i <= singleExcel.Worksheets.Count; i++)
              {
                  Microsoft.Office.Interop.Excel.Worksheet wsheet = (Microsoft.Office.Interop.Excel.Worksheet)singleExcel.Worksheets[i];

                  ListFileName.Add(wsheet.Name);
                  object ranobj = DBNull.Value;

                  //设置选择单元格,在复制出来。
                  int iRows =36;
                  int iCols = 8;
#warning 这里需要修改的内容
                  wsheet.get_Range("A5", ArrRang[iCols] + iRows.ToString()).Copy(ranobj);
                  IDataObject iData = Clipboard.GetDataObject();
                  Bitmap bits = (Bitmap)iData.GetData(DataFormats.Bitmap);
                  Bitmap myBitmap = new Bitmap(bits.Width, bits.Height);
                  Graphics g = Graphics.FromImage(myBitmap);
                  g.DrawImage(bits, 0, 0);

                  myBitmap.Save(string.Format(SAVEEXCELJPG, wsheet.Name));
                  Clipboard.SetDataObject("");
                  myBitmap.Dispose();
                  bits.Dispose();
                  if (wsheet != null)
                  {
                      System.Runtime.InteropServices.Marshal.ReleaseComObject(wsheet);
                      wsheet = null;
                  }
                  if (eventShowMessage != null)
                  {
                      eventShowMessage(2, i);

                  }
              }

          }
          catch (Exception Excel)
          {
              throw Excel;
          }
          finally
          {
              #region 释放资源www.zzzyk.com
              singleExcel.Close(null, null, null);
              app.Workbooks.Close();
              app.Quit();
              if (singleExcel != null)
              {

补充:软件开发 , C# ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,