如何使用C#代码将 Excel 文件转换为 SVG

SVG 是 Scalable Vector Graphics(可缩放矢量图形)的缩写,是一种适合在 Web 上使用的矢量图像格式。与其他图像格式相比,SVG 具有许多优势,其中最显著的一点是分辨率无关性,这意味着无论如何缩放 SVG 图像,都不会损失图像质量。有时,为了在网页中展示内容,你可能需要将 Excel 文件转换为 SVG。本文将演示如何使用 Spire.XLS for .NET,通过 C# 和 VB.NET 以编程方式将 Excel 转换为 SVG。

安装 Spire.XLS for .NET

首先,你需要将 Spire.XLS for .NET 软件包中包含的 DLL 文件添加为 .NET 项目的引用。这些 DLL 文件可以通过该链接下载,也可以通过 NuGet 进行安装。

cs 复制代码
PM> Install-Package Spire.XLS

使用 C# 和 VB.NET 将 Excel 工作表转换为 SVG

Spire.XLS 提供了 Worksheet.SaveToSVGStream() 方法,可将 Excel 工作表转换为 SVG。具体步骤如下:

  1. 初始化一个 Workbook 类的实例。

  2. 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。

  3. 通过 Workbook.Worksheets[int] 属性,根据索引获取指定的工作表。

  4. 初始化一个 FileStream 类的实例。

  5. 使用 Worksheet.ToSVGStream(Stream, int, int, int, int) 方法将工作表保存为 SVG。

具体示例代码如下:

cs 复制代码
using Spire.Xls;
using System.IO;

namespace ConvertWorksheetToSVG
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建 Workbook 类的实例
            Workbook workbook = new Workbook();
            //加载 Excel 文件
            workbook.LoadFromFile("Sample1.xlsx");

            //获取第一个工作表
            Worksheet sheet = workbook.Worksheets[0];

            //创建 FileStream 类的实例
            FileStream fs = new FileStream("E:\\Program Files\\WorksheetToSVG.svg", FileMode.Create);
            //将工作表保存为 SVG
            sheet.ToSVGStream(fs, 0, 0, 0, 0);
            fs.Flush();
            fs.Close();            
        }
    }
}

使用 C# 和 VB.NET 将 Excel 图表工作表转换为 SVG

图表工作表(Chart Sheet)是一种只包含图表的工作表。Spire.XLS 允许通过 ChartSheet.ToSVGStream() 方法将图表工作表转换为 SVG。具体步骤如下:

  1. 初始化一个 Workbook 类的实例。

  2. 使用 Workbook.LoadFromFile() 方法加载 Excel 文件。

  3. 通过 Workbook.Chartsheets[int] 属性,根据索引获取指定的图表工作表。

  4. 初始化一个 FileStream 类的实例。

  5. 使用 ChartSheet.ToSVGStream(Stream) 方法将图表工作表保存为 SVG。

具体示例代码如下:

cs 复制代码
using Spire.Xls;
using System.IO;

namespace ConvertChartSheetToSVG
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建 Workbook 类的实例
            Workbook workbook = new Workbook();
            //加载 Excel 文件
            workbook.LoadFromFile("Sample2.xlsx");

            //获取第一个图表工作表
            ChartSheet chartSheet = workbook.Chartsheets[0];

            //创建 FileStream 类的实例
            FileStream fs = new FileStream("E:\\ProgramFiles\\ChartSheetToSVG.svg", FileMode.Create);
            //将图表工作表保存为 SVG
            chartSheet.ToSVGStream(fs);
            fs.Flush();
            fs.Close();
        }
    }
}

申请临时许可证

如果你希望移除生成文档中的评估提示,或解除功能限制,请为自己申请一个为期 30 天的试用许可证。

相关推荐
吴声子夜歌1 小时前
ApacheCommons——commons-pool2(高性能通用对象池框架)
java·开发语言·apache
mldong5 小时前
C# 开发者也有自己的轻量工作流引擎了:NuGet 装包,5 分钟跑通一条审批流
后端·c#·.net
kruptos6 小时前
分布式系统怎么“选主“?Raft 共识一次讲清
开发语言·分布式·php·共识算法
吴声子夜歌6 小时前
ApacheCommons——commons-cli(命令行参数解析)
java·开发语言·apache
benchmark_cc7 小时前
REST API 和 Python SDK 应该怎么选?量化交易数据接口选型实战
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
王的宝库7 小时前
Go 项目结构:从单文件到标准工程布局
开发语言·后端·golang
Tairitsu_H7 小时前
[C++] 深入理解红黑树:封装set与map
开发语言·c++·set·map·红黑树·模拟实现
泡海椒8 小时前
JQuick-Curl 性能分析:并发场景下的性能表现与调优,第三方接口调用不只要快写也要稳跑
java·开发语言·okhttp
小智老师PMP8 小时前
2026深度解析|PMP第八版与NPDP核心侧重点本质区别(管理类证书怎么选)
开发语言·分布式·算法·职场和发展·产品经理
samble9 小时前
从零搭建工业控制系统(二十二):线程安全与并发控制
c#·wpf·并发·mvvm·线程安全·工业控制