📄 excelsample10.java
字号:
package cn.com.chengang.myplugin.poi;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFSimpleShape;
import org.apache.poi.hssf.usermodel.HSSFTextbox;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class ExcelSample10 {
public static void main(String[] args) throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("sheet1");
HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
// 画线
// “(short) 1, 1”设置了第一个单元格,指第1列第2行的单元格
// “(short) 2, 5”设置了第二个单元格,指第3列第6行的单元格
// “0, 0,”指第一个单元格的偏移量
// “1023, 255,”指第二个单元格的偏移量
// 偏移量“x, y,”中x表示水平偏移,范围是0~1023;y表示垂直偏移,范围是0~255
// 其值为将一个单元格的长高分别分成1023和255份,偏移的起点是单元格的左上角。
HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 255, (short) 1, 1, (short) 2, 5);
HSSFSimpleShape shape1 = patriarch.createSimpleShape(a);
shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
// 创建一个浮动文本框
a = new HSSFClientAnchor(0, 0, 0, 0, (short) 3, 3, (short) 4, 5);
HSSFTextbox textbox = patriarch.createTextbox(a);
// 设置浮动文本框的文字和字体
HSSFFont font = wb.createFont();
font.setItalic(true);
font.setUnderline(HSSFFont.U_DOUBLE); // 双下划线
HSSFRichTextString string = new HSSFRichTextString("Hello World");
// 将第3~第5个之间的字符应用字体,即“llo”。参数为0表示第1个字符
string.applyFont(2, 5, font);
textbox.setString(string);
// 写入文件
FileOutputStream fileOut = new FileOutputStream("workbook.xls");
wb.write(fileOut);
fileOut.close();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -