如何在不使用excel互操作库的情况下将excel工作簿转换为 pdf

我有一个 xlsx 文件,其中包含每个表格中的图表。我想将其保存为 pdf 文件。

我有一个 xlsx 文件,其中包含每个表格中的图表。我想将其保存为 pdf 文件。

我用 excel.interop 做了一个样本:

Application excelApplication = new Application();
Workbook wkb = excelApplication.Workbooks.Open(oSlideMaster._FILE_PATH, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, Microsoft.Office.Interop.Excel.XlCorruptLoad.xlNormalLoad);
var basePath = HttpRuntime.AppDomainAppPath;
wkb.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, ExportExcelToPdfFullPathWithoutExt);

此代码在 Visual Studio 上工作,但在没有安装 MS Office 2007 或更高版本的服务器上不起作用。

问题是:

如何在不使用 excel.interop 库的情况下将(免费)excel 转换为 pdf(包括图表)。因为我不想在服务器端安装 ms office。

重点是:我尝试了一些 dll 将 excel 转换为 pdf,但我无法转换 CHARTS 只有文本我可以成功转换。

谢谢

下载file

Sample excel data

1

试试下面这段代码。

 excelworkBook.SaveAs(saveAsLocation);
 excelworkBook.Close();
 excel.Quit();
 bool flag=SaveAsPdf(saveAsLocation);

其中saveAsLocationexecelworkBook的完整路径。之后,使用库Spire.Xls将其转换为 pdf。为此,请添加引用Spire.Xls,可以使用Manage Nuget Packages将其添加到您的项目中。

private bool SaveAsPdf(string saveAsLocation)
  {
    string saveas = (saveAsLocation.Split('.')[0]) + ".pdf";
      try
        {
          Workbook workbook = new Workbook();
          workbook.LoadFromFile(saveAsLocation);
          //Save the document in PDF format
          workbook.SaveToFile(saveas, Spire.Xls.FileFormat.PDF);
          return true;
        }
       catch (Exception ex)
         {
           MessageBox.Show(ex.Message);
           return false;
         }
  }
0

http://www.gemboxsoftware.com/Spreadsheet/downloads下载 dll

添加引用和代码

using System;
using System.Drawing;
using System.Text;
using GemBox.Spreadsheet;
class Sample
{
    [STAThread]
    static void Main(string[] args)
    {
        // If using Professional version, put your serial key below.
        SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY");
        ExcelFile ef = ExcelFile.Load("test.xlsx");
        ef.Save("Convert.pdf");
    }
}
0

您可以考虑Aspose.Cells作为任务。请参阅示例.NET 代码以供参考:

例如

示例代码:

// Open an Excel file 
Workbook workbook = new Workbook("Book1.xlsx"); 
// Save the document in PDF format 
workbook.Save("output.pdf", SaveFormat.Pdf);

另外,请参阅document以供参考。

PS。我在 Aspose 担任支持开发人员 / 传教士。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(854)
使用MSAccess数据库跟踪十二个月公式
上一篇
在css样式表中使用pull-right
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(84条)