C# 给Excel单元格添加文本及图片批注

原创 2016年09月30日 17:08:24

C# 给Excel单元格添加文本及图片批注

批注分为两种,文本批注和图片批注,常被用在一些报表中来注释一些额外的信息,这样有助于阅读的人更好的理解数据。那么如何添加批注呢?MicrosoftExcel给我们提供了内置的插入批注的功能使我们可以轻松地给单元格添加批注,这个很简单,就不介绍了。本篇文章的主要目的是分享如何使用C#编程的方式来实现这一功能。这里我使用了一款由E-iceblue公司开发的免费组件- Free Spire.XLS, 它是一款独立的.NET Excel组件,运行不依赖于Microsoft Office,使用起来也很简单。

准备工作

1. 下载Free Spire.XLS 并安装

2. 创建一个C# 控制台项目,并添加对Spire.XLS.dll的引用

代码

使用如下命名空间:

using System.Drawing;
using Spire.Xls;

第一步,加载Excel文档:

Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
这里我是新建的Excel文档。Spire.XLS 也提供了Workbook. LoadFromFile(stringfileName)方法来加载现有的Excel文档。

第二步,添加文本批注:

ExcelFont font1 = workbook.CreateFont();
font1.FontName = "Calibri";
font1.Color = Color.Firebrick;
font1.IsBold = true;
sheet.Range["C6"].Comment.RichText.Text= "evanece@hotmail.com";
sheet.Range["C6"].Comment.Width= 200;
sheet.Range["C6"].Comment.Height= 50;
sheet.Range["C6"].Comment.RichText.SetFont(0,18, font1);
第三步,添加图片批注:

Image image = Image.FromFile(@"C: \Users\Administrator\Desktop\Logo.png");
sheet.Range["E6"].Comment.Fill.CustomPicture(image,"Logo.png");
sheet.Range["E6"].Comment.Height= image.Height;
sheet.Range["E6"].Comment.Width= image.Width;

第四步,保存文档:

workbook.SaveToFile("批注.xls", ExcelVersion.Version97to2003);

效果图

文本批注


图片批注



完整代码

using System.Drawing;
using Spire.Xls;
 
namespace Excel单元格添加批注
{
    class Program
    {
        static void Main(string[] args)
        {
           Workbook workbook = newWorkbook();
           Worksheet sheet = workbook.Worksheets[0];
 
           ExcelFont font1 = workbook.CreateFont();
           font1.FontName = "Calibri";
           font1.Color = Color.Firebrick;
           font1.IsBold = true;
           sheet.Range["C6"].Comment.RichText.Text = "evanece@hotmail.com";
           sheet.Range["C6"].Comment.Width= 200;
           sheet.Range["C6"].Comment.Height= 50;
           sheet.Range["C6"].Comment.RichText.SetFont(0,18, font1);
 
           Imageimage = Image.FromFile(@"C: \Users\Administrator\Desktop\Logo.png");
           sheet.Range["E6"].Comment.Fill.CustomPicture(image,"Logo.png");
           sheet.Range["E6"].Comment.Height= image.Height;
           sheet.Range["E6"].Comment.Width= image.Width;
 
           workbook.SaveToFile("批注.xls",ExcelVersion.Version97to2003);
        }
    }
}


希望本文能给您带来一定的帮助!

C#中操作Excel(3)—— Excel中操作文本、图片和批注

一 引言        本文主要介绍向Excel中插入文本和图片的方法。相信大家对Excel的模型对象都有了一定的了解,和Word相似,Excel中插入文本和图片也需要依靠Range对象。但是与Wor...
  • lzhui1987
  • lzhui1987
  • 2016年11月17日 11:35
  • 1580

C#中操作Excel(3)—— Excel中操作文本、图片和批注

一 引言        本文主要介绍向Excel中插入文本和图片的方法。相信大家对Excel的模型对象都有了一定的了解,和Word相似,Excel中插入文本和图片也需要依靠Range对象。但是与Wor...
  • lzhui1987
  • lzhui1987
  • 2016年11月17日 11:35
  • 1580

(3) 如何用Apache POI操作Excel文件-----如何对一个单元格加注解?

有的时候,我们需要通过操作Apache POI,在生成Cell数据的同时,能对其生成的Cell,加上注解(comments)。那么如何对其来加注解呢?...
  • chancein007
  • chancein007
  • 2015年05月29日 17:06
  • 2695

POI实战-java开发excel详解(第四章 常用操作-注释)

4.常用操作 4.1注释 4.1.1 单表注释 POI支持Excel单元格加注释功能。创建注释需要通过sheet表去创建类org.apache.poi.hssf.usermodel.HSSFPa...
  • yuzhenling
  • yuzhenling
  • 2015年08月31日 13:50
  • 2904

C# Excel批注“哪种开发语言最好”

Excel批注常用于为个别的单元格添加注释,读者能够从注释中获取额外的信息。批注可隐藏,只会在单元格右上方显示红色三角,添加后不会对单元格的内容喧宾夺主。在日常编程处理Excel中,为个别单元格添加备...
  • Eiceblue
  • Eiceblue
  • 2015年07月30日 16:11
  • 1309

C# 读取 Excel 模板 并向指定单元格 插入数据

C# 读取 Excel 模板 并向指定单元格 插入数据
  • u010534192
  • u010534192
  • 2016年11月20日 12:30
  • 2574

C#读取写入excel单元格

c# 读取写入excel单元格(包括对excel的一些基本操作) 以下是一些对excel的一些基本操作 1:工程对excel类库的导入,如:c:\program files\M...
  • u010763324
  • u010763324
  • 2016年08月05日 13:40
  • 321

c# 操作Excel单元格属性

range.NumberFormatLocal = "@";     //设置单元格格式为文本 range = (Range)worksheet.get_Range("A1", "E1");    ...
  • u010034670
  • u010034670
  • 2013年11月28日 15:29
  • 1651

C# Excel 行高,列宽,合并单元格,单元格边框线,冻结

private _Workbook _workBook = null; private Worksheet _workSheet = null; private Excel.Application _...
  • onlyzkg
  • onlyzkg
  • 2014年11月27日 14:40
  • 1508

C#中导出Excel的单元格属性设置

2、 Excel显示格式控制。 A、单元格格式设置,默认为常规类型;Excel 代码: Excel.Range r = mySheet.get_Range(mySheet.Cells[1, 1...
  • wangqifei521
  • wangqifei521
  • 2014年04月11日 15:09
  • 2805
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 给Excel单元格添加文本及图片批注
举报原因:
原因补充:

(最多只允许输入30个字)