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

 更新时间:2025年04月18日 14:25:30   作者:Eiceblue  
Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C#实现将Excel表格转换为图片吧

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

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

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

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

C#代码:

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

代码如下:

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 到指定路径。
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 到指定路径。
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 文件。
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 文件。
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);
        }
    }
}

到此这篇关于C#实现将Excel表格转换为图片(JPG/ PNG)的文章就介绍到这了,更多相关C# Excel转图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • WPF使用WrapPanel实现虚拟化效果

    WPF使用WrapPanel实现虚拟化效果

    这篇文章主要为大家详细介绍了如何利用WPF WrapPanel实现虚拟化效果,文中的示例代码讲解详细,对我们学习或工作有一定帮助,感兴趣的小伙伴可以了解一下
    2022-09-09
  • C#从windows剪贴板获取并显示文本内容的方法

    C#从windows剪贴板获取并显示文本内容的方法

    这篇文章主要介绍了C#从windows剪贴板获取并显示文本内容的方法,涉及C#操作剪贴板的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C#给文字换行的小技巧

    C#给文字换行的小技巧

    这篇文章主要介绍了C#给文字换行的小技巧,本文直接给出实现代码,例子蛮简单,一看就懂啦,需要的朋友可以参考下
    2015-06-06
  • C#实现合并多张图片为GIF动态图

    C#实现合并多张图片为GIF动态图

    这篇文章主要为大家详细介绍了C#如何将把一张又一张的图片去拼合成一张GIF动态图片,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-12-12
  • .NET使用IResourceMonitor实现获取资源信息

    .NET使用IResourceMonitor实现获取资源信息

    在 Microsoft.Extensions.Diagnostics.ResourceMonitoring 包提供了一系列定制 API,专用于监视 .NET 应用程序的资源利用率,本文将利用IResourceMonitor来实现获取资源状态信息,感兴趣的可以了解下
    2024-01-01
  • C#拼图游戏编写代码

    C#拼图游戏编写代码

    这篇文章主要为大家详细介绍了C#拼图游戏的编写代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • WPF中Binding字符串格式化技巧分享

    WPF中Binding字符串格式化技巧分享

    在 WPF 开发中,数据绑定(Binding)是一项核心功能,它允许 UI 元素与数据源紧密关联,下面我们就来深入了解下Binding字符串格式化的技巧吧
    2024-10-10
  • c#字符串值类型与引用类型比较示例

    c#字符串值类型与引用类型比较示例

    这篇文章主要介绍了c#字符串值类型与引用类型比较示例,需要的朋友可以参考下
    2014-03-03
  • Silverlight将图片转换为byte的实现代码

    Silverlight将图片转换为byte的实现代码

    这篇文章主要介绍了Silverlight将图片转换为byte的实现代码,需要的朋友可以参考下
    2015-11-11
  • C#监测IPv4v6网速及流量的实例代码

    C#监测IPv4v6网速及流量的实例代码

    这篇文章主要介绍了C#监测IPv4v6网速及流量的实例代码,文中讲解非常细致,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07

最新评论