利用NPOI将excel转成PDF导出

      利用NPOI将excel转成PDF导出,实际上也是先生成excel文件,然后将excel文件转成PDF文件,需要先确认已经安装好了office,并且已经在服务器上开通了相应的权限

 /// <summary>
        /// 转换excel成PDF文档
        /// </summary>
        /// <param name="_lstrInputFile">原文件路径</param>
        /// <param name="_lstrOutFile">pdf文件输出路径</param>
        /// <returns>true 成功</returns>
        public bool exceltoPDF(string _lstrInputFile, string _lstrOutFile)
        {
            Microsoft.Office.Interop.Excel.Application lobjExcelApp = null;
            Microsoft.Office.Interop.Excel.Workbooks lobjExcelWorkBooks = null;
            Microsoft.Office.Interop.Excel.Workbook lobjExcelWorkBook = null;
            string lstrTemp = string.Empty;
            object lobjMissing = System.Reflection.Missing.Value;
            try
            {
                lobjExcelApp = new Microsoft.Office.Interop.Excel.Application();
                lobjExcelApp.Visible = false;
                lobjExcelWorkBooks = lobjExcelApp.Workbooks;
                lobjExcelWorkBook = lobjExcelWorkBooks.Open(_lstrInputFile, true, true, lobjMissing, lobjMissing, lobjMissing, true,
                    lobjMissing, lobjMissing, lobjMissing, lobjMissing, lobjMissing, false, lobjMissing, lobjMissing);
                //Microsoft.Office.Interop.Excel 12.0.0.0之后才有这函数           
                lstrTemp = System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".xlsx" + (lobjExcelWorkBook.HasVBProject ? 'm' : 'x');
                //输出为PDF 第一个选项指定转出为PDF,还可以指定为XPS格式
                lobjExcelWorkBook.ExportAsFixedFormat(Microsoft.Office.Interop.Excel.XlFixedFormatType.xlTypePDF, _lstrOutFile, Microsoft.Office.Interop.Excel.XlFixedFormatQuality.xlQualityStandard, Type.Missing, false, Type.Missing, Type.Missing, false, Type.Missing);
                lobjExcelWorkBooks.Close();
                lobjExcelApp.Quit();
                return true;
            }
            catch (Exception ex)
            {
                return false;
                throw ex;
              
            }
        }

猜你喜欢

转载自blog.csdn.net/KX_JoyK/article/details/86687817