本文介绍使用 Spire.XLS for Java 来读取 Excel 文本框的方法,包括读取文本框中的文本、填充色、填充图片、文本框名称等。添加文本框的方法请参考这篇文章。
import com.spire.xls.*;
import com.spire.xls.core.spreadsheet.shapes.XlsTextBoxShape;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ReadTextBox {
public static void main(String[] args) throws IOException {
//创建实例,并加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//获取第一个文本框,读取文本及填充色
XlsTextBoxShape textBoxShape1 = (XlsTextBoxShape) sheet.getTextBoxes().get(0);
String text = textBoxShape1.getText();
Color color = textBoxShape1.getFillColor();
String name = textBoxShape1.getName();
System.out.println("文本内容:"+ text + " 填充色:" + color + " 名称:"+ name);
//获取第一个文本框,读取填充图片
XlsTextBoxShape textBoxShape2 = (XlsTextBoxShape) sheet.getTextBoxes().get(1);
BufferedImage image = textBoxShape2.getFill().getPicture();
ImageIO.write(image,"png", new File("ExtractedImg.png"));
}
}
文本和图片读取结果: