本次经验内容分享如何通过C#程序代码将Excel工作表中的形状转为图片保存到本地指定路径。具体实现的方法步骤如下。
工具/原料
.net framework4.6.1
Visual Studio2017
Excel 类库Spire.XLS for .NET 11.8
Excel测试文档: 2013版 .xlsx格式
引用dll文件
1、在vs程序中引用Spire.Xls.dll。(引用前需下载Spire.XLS for .NET包到本地)。鼠标右键点击“引用”,“添加引用”,
2、添加本地路径中的spire.xls.dll文件
3、点击“ok”,完成引用
4、引用完成效果如图:
C#代码
1、using Spire.Xls;using System.Collections.Generic;using System.Drawing;using System.Drawing.Imaging;namespace SaveShapeAsImage{ class Program { static void Main(string[] args) { //创建Workbook对象 Workbook workbook = new Workbook(); //加载Excel文档 workbook.LoadFromFile("test.xlsx"); //获取第一个工作表 Worksheet sheet = workbook.Worksheets[0]; //创建SaveShapeTypeOption对象 SaveShapeTypeOption shapelist = new SaveShapeTypeOption(); //保存工作表中的形状和SmartArt图形为图片 List<Bitmap> images = sheet.SaveShapesToImage(shapelist); int index = 0; foreach (Image img in images) { img.Save("toImage" + index + ".Png", ImageFormat.Png);//这里的图片保存路径为程序文件夹路径(路径可自定义) index++; } } }}
2、在程序项目文件夹下可查看保存的图片
vb.net代码
1、Imports Spire.XlsImports S鲻戟缒男ystem.Collections.GenericImports System.DrawingI罪焐芡拂mports System.Drawing.ImagingNamespace SaveShapeAsImage Class Program Private Shared Sub Main(args As String()) '创建Workbook对象 Dim workbook As New Workbook() '加载Excel文档 workbook.LoadFromFile("test.xlsx") '获取第一个工作表 Dim sheet As Worksheet = workbook.Worksheets(0) '创建SaveShapeTypeOption对象 Dim shapelist As New SaveShapeTypeOption() '保存工作表中的形状和SmartArt图形为图片 Dim images As List(Of Bitmap) = sheet.SaveShapesToImage(shapelist) Dim index As Integer = 0 For Each img As Image In images img.Save("toImage" + index + ".Png", ImageFormat.Png) '这里的图片保存路径为程序文件夹路径(路径可自定义) index += 1 Next End Sub End ClassEnd Namespace