通过C# 将Excel表格转换为图片(JPG/ PNG)

Excel 表格可能会因为不同设备、不同软件版本或字体缺失等问题,导致格式错乱或数据显示异常。转换为图片后,能确保数据的排版、格式和外观始终保持一致,无论在何种设备或平台上查看,都能呈现出固定的样式,避免了因环境差异而产生的显示问题。本文将介绍如何在.NET 程序中通过C# 将Excel转换为图片 (JPG、PNG等)

文章目录

    • [通过C# 转换Excel工作表到图片](# 转换Excel工作表到图片)
    • [通过C# 转换指定单元格区域到图片](# 转换指定单元格区域到图片)

本文需要用到一个免费国产库 Free Spire.XLS for .NET (有页数限制)。该库可以直接通过在Visual Studio > NuGet程序包管理器中搜索 "FreeSpire.XLS" 来安装。也可以通过该链接下载产品包后手动添加引用。

通过C# 转换Excel工作表到图片

免费Spire.XLS库提供的 SaveToImage() 方法可将某个指定的工作表转换为JPG或PNG图片。步骤参考:

  1. 使用 Workbook 类的 LoadFromFile() 方法加载 Excel 文档。
  2. 通过 Workbook 类的 Worksheets[] 属性获取文档中的指定工作表。
  3. 使用 Worksheet 类的 SaveToImage() 方法将工作表保存为指定格式的图片。

C#代码:

csharp 复制代码
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() 方法将该对象保存为特定图片格式。

代码如下:

csharp 复制代码
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);
        }
    }
}

如需将Excel表格转为其他格式,如Excel转PDFExcel转HTMLExcel转CVS等,或者该免费库支持的其他Excel操作功能,可以查看以下教程:

https://www.e-iceblue.cn/spirexls/spire-xls-for-net-program-guide-content.html

相关推荐
m0_555762903 小时前
Excel ——INDEX + MATCH 组合
excel
焚 城3 小时前
Excel数据导出小记二: [大数据示例]
大数据·excel
偷心伊普西隆4 小时前
Python EXCEL 小技巧:最快重新排列dataframe函数
python·excel
Leslie_Lei5 小时前
【EasyExcel】Excel工具类2.0
excel
almighty276 小时前
C# 阿里云 OSS 图片上传步骤及浏览器查看方法
c#·图片上传·c# 阿里云 oss·阿里云 oss
HappyAcmen6 小时前
【自动化实战】Python操作Excel/WORD/PDF:openpyxl与docx库详解
python·自动化·excel
MasterNeverDown15 小时前
.net 微服务jeager链路跟踪
微服务·架构·.net
CHEN5_0218 小时前
【CouponHub项目开发】EasyExcel解析Excel并使用线程池异步执行和延时队列兜底
java·数据库·excel
我想起个名字18 小时前
sqlserver2008导入excel表数据遇到的问题
sqlserver·excel