批注是一种富文本注释,常用于为指定的Excel单元格添加提示或附加信息。 Free Spire.XLS for Java为开发人员免费提供了在Java应用程序中对Excel文件添加和操作批注的功能。 本文将介绍如何使用 Free Spire.XLS for Java 在Excel文档中添加,读取和删除批注。
首先你需要下载 Spire.XLS JAR 并将其作为依赖项添加到您的Java程序中。如果您使用的是maven,您需要将以下依赖项添加到您的pom.xml文件中。
<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>http://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.xls.free</artifactId> <version>2.2.0</version> </dependency> </dependencies>
下面的示例将演示如何使用免费的Free Spire.XLS for Java将批注添加到Excel文件中,并为批注文本中各个字符设置不同的字体颜色。
importcom.spire.xls./*; publicclassAddComments{ publicstaticvoidmain(String/[/]args){ //新建Excel文档 Workbookworkbook/=newWorkbook(); //获取第一张工作表 Worksheetsheet/=workbook.getWorksheets().get(0); //设置工作表名称 sheet.setName("批注"); //添加文本到单元格/[1,1/] CellRangerange/=sheet.getCellRange(1,1); range.setText("添加批注:"); //添加文本到单元格 /[5,1/] CellRangerange1/=sheet.getCellRange(5,1); range1.setText("批注"); //添加批注到单元格 /[5,1/] range1.getComment().setText("这是一个批注//n它可以是多行的。"); //展示批注 range1.getComment().setVisible(true); //设置批注高度 range1.getComment().setHeight(100); //创建字体并设置字体颜色 ExcelFontfontBlue/=workbook.createFont(); fontBlue.setKnownColor(ExcelColors.LightBlue); ExcelFontfontGreen/=workbook.createFont(); fontGreen.setKnownColor(ExcelColors.LightGreen); //设置批注文本中各个字符的字体 range1.getComment().getRichText().setFont(0,1,fontGreen); range1.getComment().getRichText().setFont(2,3,fontBlue); range1.getComment().getRichText().setFont(4,5,fontGreen); //保存结果文档 workbook.saveToFile("添加批注.xlsx",ExcelVersion.Version2013); } }
Free Spire.XLS for Java支持读取所有批注以及与Excel工作表中指定单元格相关联的特定批注。
importcom.spire.xls./*; publicclassReadComments{ publicstaticvoidmain(String/[/]args){ //加载Excel文档 Workbookworkbook/=newWorkbook(); workbook.loadFromFile("添加批注.xlsx"); //获取第一张工作表 Worksheetsheet/=workbook.getWorksheets().get(0); //打印工作表中所有的批注 for(inti/=0;i<sheet.getComments().getCount();i++){ Stringcomment/=sheet.getComments().get(i).getText(); System.out.println(comment); } //打印与指定单元格相关联的批注 //System.out.println(sheet.getCellRange(5,1).getComment().getText()); } }
删除 批注
通过使用Free Spire.XLS for Java我们可以删除所有注释,也可以删除与Excel工作表中指定单元格相关联的特定批注。
importcom.spire.xls./*; publicclassDeleteComments{ publicstaticvoidmain(String/[/]args){ //加载Excel文档 Workbookworkbook/=newWorkbook(); workbook.loadFromFile("添加批注.xlsx"); //获取第一张工作表 Worksheetsheet/=workbook.getWorksheets().get(0); //删除工作表中所有批注 for(inti/=0;i<sheet.getComments().getCount();i++){ sheet.getComments().get(i).remove(); } //删除与指定单元格相关联的批注 sheet.getCellRange(5,1).getComment().remove(); workbook.saveToFile("删除批注.xlsx",ExcelVersion.Version2013); } }