Excel 表格可能会因为不同设备、不同软件版本或字体缺失等问题,导致格式错乱或数据显示异常。转换为图片后,能确保数据的排版、格式和外观始终保持一致,无论在何种设备或平台上查看,都能呈现出固定的样式,避免了因环境差异而产生的显示问题。本文将介绍如何在.NET 程序中通过C# 将Excel转换为图片 (JPG、PNG等)。
通过C# 转换Excel工作表到图片
免费Spire.XLS库提供的 SaveToImage() 方法可将某个指定的工作表转换为JPG或PNG图片。步骤参考:
- 使用 Workbook 类的 LoadFromFile() 方法加载 Excel 文档。
- 通过 Workbook 类的 Worksheets[] 属性获取文档中的指定工作表。
- 使用 Worksheet 类的 SaveToImage() 方法将工作表保存为指定格式的图片。
C#代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
using Spire.Xls;
namespace ExcelToImage
{
class Program
{
static void Main(string[] args)
{
// 加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"E:\PythonExcel\计划.xlsx");
// 获取第一张工作表
Worksheet sheet = workbook.Worksheets[0];
// 将工作表保存为图片
sheet.SaveToImage("Excel转图片.jpg");
}
}
}
|
转换结果:

通过C# 转换指定单元格区域到图片
要实现该功能,可以先使用 Worksheet.ToImage(int firstRow, int firstColumn, int lastRow, int lastColumn) 方法一个指定的单元格区域转换为 Image 对象,然后再使用 Image.Save() 方法将该对象保存为特定图片格式。
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
using Spire.Xls;
using System.Drawing.Imaging;
namespace ExcelToImage
{
class Program
{
static void Main(string[] args)
{
// 加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"E:\PythonExcel\计划.xlsx");
// 获取第一张工作表
Worksheet sheet = workbook.Worksheets[0];
// 指定单元格区域并将其保存为特定图像格式
sheet.ToImage(2, 2, 5, 6).Save("单元格区域转图片.png", ImageFormat.Png);
}
}
}
|

知识扩展
C# 将 Excel 转为 PDF
1.将整个 Excel 工作薄转为 PDF
工作簿转为 PDF 的步骤如下:
- 创建 Workbook 类的对象。
- 通过 Workbook.LoadFromFile(string fileName) 方法加载 Excel 文档。
- 通过 Workbook.SaveToFile(string fileName, FileFormat fileFormat) 方法保存为 PDF 到指定路径。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
using Spire.Xls;
namespace WorkbookToPDF
{
class Program
{
static void Main(string[] args)
{
//创建Workbook类的实例
Workbook workbook = new Workbook();
//加载Excel工作簿
workbook.LoadFromFile("test.xlsx");
//将整个工作薄保存为PDF
workbook.SaveToFile("WorkbookToPDF.pdf",FileFormat.PDF);
}
}
}
|
2.将指定 Excel 工作表转为 PDF
工作表转为PDF的步骤如下:
- 创建 Workbook 类的对象。
- 通过 Workbook.LoadFromFile(string fileName) 方法加载 Excel 文档。
- 通过 Workbook.Worksheets[] 属性获取指定工作表。
- 通过 Worksheet.SaveToPdf(string fileName, FileFormat fielFormat) 方法保存为 PDF 到指定路径。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
using Spire.Xls;
namespace WorksheetToPDF
{
class Program
{
static void Main(string[] args)
{
//创建Workbook类的对象
Workbook workbook = new Workbook();
//加载Excel文档
workbook.LoadFromFile("test.xlsx");
//获取第2个工作表
Worksheet sheet = workbook.Worksheets[1];
//将工作表保存为PDF
sheet.SaveToPdf("SheetToPDF.pdf", FileFormat.PDF);
}
}
}
|
C#将 Excel 转换为 HTML
1.将 Excel 转换为 HTML
Spire.XLS for .NET 支持使用 Worksheet.SaveToHtml() 方法将特定的 Excel 工作表转换为 HTML。下面列出了详细的步骤。
- 创建一个 Wordbook 实例。
- 使用 Workbook.LoadFromFile() 方法加载 Excel 示例文档。
- 使用 Workbook.Worksheets[] 属性获取特定工作表。
- 使用 Worksheet.SaveToHtml() 方法将工作表保存为 HTML 文件。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
using Spire.Xls;
namespace XLSToHTML
{
class Program
{
static void Main(string[] args)
{
//创建一个Workbook实例
Workbook workbook = new Workbook();
//加载 Excel 示例文档
workbook.LoadFromFile(@"C: \Users\Administrator\Desktop\sample.xlsx");
//获取文档的第一个工作表
Worksheet sheet = workbook.Worksheets[0];
//将工作表保存为 HTML
sheet.SaveToHtml("ExcelToHTML.html");
}
}
}
|
2.将嵌入图像的 Excel 转换为 HTML
以下是将 Excel 工作表转换为嵌入图像的 HTML 的步骤。
- 创建一个 Workbook 实例。
- 使用 Workbook.LoadFromFile() 方法加载 Excel 示例文档。
- 使用 Workbook.Worksheets[] 属性获取特定工作表。
- 创建一个 HTMLOptions 实例。
- 将 ImageEmbedded 设置为 true 以将图像嵌入 HTML。
- 使用 Worksheet.SaveToHtml() 方法将工作表保存为 HTML 文件。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet;
namespace XLSToHTML
{
class Program
{
static void Main(string[] args)
{
//创建一个Workbook实例
Workbook workbook = new Workbook();
//加载 Excel 示例文档
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.xlsx");
//获取文档的第一个工作表
Worksheet sheet = workbook.Worksheets[0];
//创建一个 HTMLOptions 实例
HTMLOptions options = new HTMLOptions();
//将图像嵌入 HTML
options.ImageEmbedded = true;
//将工作表保存为 HTML
sheet.SaveToHtml("XLS2HTML.html", options);
}
}
}
|
|