使用 Spire.XLS,程序员可以通过调用方法SaveToPdf()将整个工作表保存为 PDF 。但是,您可能只想将工作表的一部分保存或导出为 PDF。由于 Spire.XLS 没有提供直接将单元格范围转换为 PDF 的方法,我们可以将选定的范围复制到新的工作表中,然后将其保存为 PDF 文件。这种方法看起来很复杂,但对于 Spire.XLS 仍然有效。
欢迎下载|体验更多E-iceblue产品 或加入Q群(767755948)
看下面的测试文件,我们只希望从 A1 到 H11 的单元格转换为 PDF。我们将首先创建一个新的空白工作表,使用CellRange.Copy()方法将所选范围复制到新工作表,然后将新工作表转换为 PDF。
代码片段:
第 1 步:创建一个新工作簿并加载测试文件。
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx", ExcelVersion.Version2010);
第 2 步:将新工作表添加到工作簿。
workbook.Worksheets.Add("newsheet");
第 3 步:将所选范围从它存储的位置复制到新工作表。
workbook.Worksheets[0].Range["A1:H11"].Copy(workbook.Worksheets[1].Range["A1:H11"]);
第 4 步:将新工作表转换为 PDF。
workbook.Worksheets[1].SaveToPdf("result.pdf", Spire.Xls.FileFormat.PDF);
结果:
完整代码:
[C#]
using Spire.Xls;
namespace Convert
{
class Program
{
static void Main(string[] args)
{
Workbook workbook = new Workbook();
workbook.LoadFromFile("test.xlsx", ExcelVersion.Version2010);
// add a new sheet to workbook
workbook.Worksheets.Add("newsheet");
//Copy your area to new sheet.
workbook.Worksheets[0].Range["A1:H11"].Copy(workbook.Worksheets[1].Range["A1:H11"]);
//convert new sheet to pdf
workbook.Worksheets[1].SaveToPdf("result.pdf", Spire.Xls.FileFormat.PDF);
}
}
}
[VB.NET]
Imports Spire.Xls
Namespace Convert
Class Program
Private Shared Sub Main(args As String())
Dim workbook As New Workbook()
workbook.LoadFromFile("test.xlsx", ExcelVersion.Version2010)
' add a new sheet to workbook
workbook.Worksheets.Add("newsheet")
'Copy your area to new sheet.
workbook.Worksheets(0).Range("A1:H11").Copy(workbook.Worksheets(1).Range("A1:H11"))
'convert new sheet to pdf
workbook.Worksheets(1).SaveToPdf("result.pdf", Spire.Xls.FileFormat.PDF)
End Sub
End Class
End Namespace