将Excel另存为PDF

62o28rlo  于 2023-05-19  发布在  其他
关注(0)|答案(4)|浏览(182)

我在C#中打开一个Excel文件,做了一些修改,我想将其保存为PDF文件。我仔细研究了一下,发现了这个:

Microsoft.Office.Interop.Excel._Workbook oWB;
oWB.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF, "D:\\xxxxx.pdf");

但这段代码有时会打开一个表单,并且必须选择一个打印机!我不知道为什么?!
是否有其他方法从Excel导出PDF?我看到Workbook.saveas()有一个Fileformat对象。我们如何使用它?

vngu2lb8

vngu2lb81#

查看Spire.xls,下面是将Excel转换为PDF的代码。

Workbook workbook = new Workbook();
workbook.LoadFromFile("Sample.xlsx");

//If you want to make the excel content fit to pdf page
//workbook.ConverterSetting.SheetFitToPage = true;

workbook.SaveToFile("result.pdf", Spire.Xls.FileFormat.PDF);

它有一个免费版本,您可以免费使用:https://www.e-iceblue.com/Introduce/free-xls-component.html(也可在NuGet上使用)

tcbh2hod

tcbh2hod2#

如果您正在寻找替代方法,请查看GemBox。电子表格:https://www.nuget.org/packages/GemBox.Spreadsheet/
以下是如何使用它将Excel保存为PDF:

ExcelFile excel = ExcelFile.Load("D:\\xxxxx.xlsx");
excel.Save("D:\\xxxxx.pdf");

或者你可以这样写:

XlsxLoadOptions loadOptions = new XlsxLoadOptions();
ExcelFile excel = ExcelFile.Load("D:\\xxxxx.xlsx", loadOptions);

PdfSaveOptions saveOptions = new PdfSaveOptions();
excel.Save("D:\\xxxxx.pdf", saveOptions);
f4t66c6m

f4t66c6m3#

使用iTextSharp。它是原生的.NET代码。不需要任何Excel互操作-
https://www.nuget.org/packages/itextsharp/

相关问题