下面是详细讲解“C#插入图片到Excel表格单元格代码详解”的完整攻略。
简介
在使用C#处理Excel表格的过程中,插入图片是一个常见的需要,本文将讲解如何使用C#代码将图片插入到Excel表格单元格中。
准备工作
在开始之前,需要先检查电脑是否安装了Microsoft Office软件(包括Excel),还需要安装Excel程序集,以便我们可以在C#中使用相关的类库。
代码示例1:使用Microsoft.Office.Interop.Excel插入图片
下面是使用Microsoft.Office.Interop.Excel插入图片的示例代码:
using Microsoft.Office.Interop.Excel;
using System.Drawing;
Application excel = new Application();
Workbook wb = excel.Workbooks.Add(XlSheetType.xlWorksheet);
Worksheet ws = (Worksheet)excel.ActiveSheet;
ws.Shapes.AddPicture(@"C:\Users\123\Desktop\1.png", Microsoft.Office.Core.MsoTriState.msoFalse,
Microsoft.Office.Core.MsoTriState.msoCTrue, 10, 10, 200, 200);
wb.SaveAs(@"C:\Users\123\Desktop\test1.xlsx");
excel.Quit();
代码说明:
- 引用Microsoft.Office.Interop.Excel和System.Drawing命名空间。
- 创建一个Excel应用程序实例。
- 新建一个工作簿,并选择当前活动的工作表。
- 使用Shapes.AddPicture方法插入图片,需要传入以下参数:
- 第一个参数是要插入的图片路径;
- 第二个参数是布尔型,表示是否链接到文件,该参数选为False表示不链接到文件;
- 第三个参数是布尔型,表示是否使图片随着Excel单元格大小调整而自动调整大小,该参数选为MsoTriState.msoCTrue表示图片自动调整大小;
- 第四个参数和第五个参数是两个整型,表示图片在单元格中的位置;
- 第六个参数是两个整型,表示图片的宽和高。
- 保存Excel文件。
- 退出Excel应用程序。
代码示例2:使用EPPlus插入图片
EPPlus是基于Open Office XML格式的开源库,可以操作Excel 2007或更高版本,使用起来非常方便。以下是使用EPPlus插入图片的示例代码:
using OfficeOpenXml;
using System.Drawing;
using System.IO;
ExcelPackage excel = new ExcelPackage();
var ws = excel.Workbook.Worksheets.Add("Sheet1");
FileInfo imageFile = new FileInfo(@"C:\Users\123\Desktop\1.png");
var picture = ws.Drawings.AddPicture("PictureName", imageFile);
picture.SetPosition(10, 10);
picture.SetSize(200, 200);
excel.SaveAs(new FileInfo(@"C:\Users\123\Desktop\test2.xlsx"));
代码说明:
- 引用OfficeOpenXml命名空间。
- 创建一个ExcelPackage实例。
- 新建一个工作表。
- 创建图片文件信息。
- 使用Drawings.AddPicture方法插入图片,需要传入以下参数:
- 第一个参数是图片名称;
- 第二个参数是图片文件信息;
- 使用picture.SetPosition方法设置图片在单元格中的位置。
- 使用picture.SetSize方法设置图片的大小。
- 保存Excel文件。
- 退出Excel应用程序。
总结
本文介绍了如何使用C#代码将图片插入到Excel表格单元格中,我们可以根据自己的需求选择使用Microsoft.Office.Interop.Excel或EPPlus插件完成代码实现。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#插入图片到Excel表格单元格代码详解 - Python技术站