您的位置:首页 > Web前端 > CSS

HSSFWorkbook And SXSSFWorkbook样式设置

2015-09-18 15:59 916 查看
直插正题:HSSFWorkbook 创建样式:
HSSFCellStyle style = workbook.createCellStyle();
一、设置背景色:
cellStyle.setFillForegroundColor((short) 10);// 设置背景色,颜色的索引还必须是 0x08 ~ 0x40 (8 ~ 64) 的数字
自定义颜色,如果不使用POI提供的默认颜色,就需要自定颜色索引:
HSSFPalette palette = workbook.getCustomPalette();
palette.setColorAtIndex((short) 9, (byte) (color.getRed()), (byte) (color.getGreen()), (byte) (color.getBlue()));
设置颜色的索引只能是 8 ~ 64,在此之外的索引无效,也不会报错。以下三种方式都可以设置成功 :
palette.setColorAtIndex((short)9, (byte) (0xff & 251), (byte) (0xff & 161), (byte) (0xff & 161));
palette.setColorAtIndex((short)10, (byte) (0x66), (byte) (0xcd), (byte) (0xaa));
palette.setColorAtIndex((short)11, (byte) (255), (byte) (165), (byte) (0));
然后使用颜色,如上例,可以用新的颜色索引,替换原有的颜色:
style.setFillForegroundColor((short) 9);
cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); //设置前景填充样式,SOLID_FOREGROUND纯色使用前景颜色填充
cellStyle.setFillForegroundColor(HSSFColor.DARK_RED.index);//前景填充色
cellStyle.setFillBackgroundColor(HSSFColor.AQUA.index);//设置背景色
颜色类型是在HSSFColor里面定义的:
执行结果
HSSFColor.ROYAL_BLUE
HSSFColor.TEAL
HSSFColor.LIME
HSSFColor.PALE_BLUE
HSSFColor.AQUA
HSSFColor.GREEN
HSSFColor.TURQUOISE
HSSFColor.DARK_BLUE
HSSFColor.CORNFLOWER_BLUE
HSSFColor.OLIVE_GREEN
HSSFColor.WHITE
HSSFColor.LIGHT_TURQUOISE
HSSFColor.LEMON_CHIFFON
HSSFColor.LIGHT_GREEN
HSSFColor.BLUE
HSSFColor.DARK_RED
HSSFColor.CORAL
HSSFColor.RED
HSSFColor.LIGHT_YELLOW
HSSFColor.SKY_BLUE
HSSFColor.BROWN
HSSFColor.SEA_GREEN
HSSFColor.INDIGO
HSSFColor.MAROON
HSSFColor.GREY_80_PERCENT
HSSFColor.GREY_25_PERCENT
HSSFColor.DARK_GREEN
HSSFColor.YELLOW
HSSFColor.GOLD
HSSFColor.GREY_40_PERCENT
HSSFColor.DARK_TEAL
HSSFColor.PINK
HSSFColor.ORCHID
HSSFColor.LIGHT_BLUE
HSSFColor.LIGHT_CORNFLOWER_BLUE
HSSFColor.BLACK
HSSFColor.DARK_YELLOW
HSSFColor.VIOLET
HSSFColor.LAVENDER
HSSFColor.ROSE
HSSFColor.BLUE_GREY
HSSFColor.LIGHT_ORANGE
HSSFColor.ORANGE
HSSFColor.GREY_50_PERCENT
二、设置边框:
cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框
cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框
cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框
cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框
三、设置居中:
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 水平居中
cellStyle.setAlignment(HSSFCellStyle.VERTICAL_CENTER); // 垂直居中
四、设置字体:
HSSFFont font = workbook.createFont();
font.setFontName("宋体");//设置字体
font.setFontHeightInPoints((short) 20);//设置字体大小
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
五、设置自动换行:
cellStyle.setWrapText(true);//设置自动换行
六、合并单元格:
Region region1 = new Region(0, (short) 0, 0, (short) 6);//参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号
sheet.addMergedRegion(region1);
七、公式:
操作语法
添加多个数值= SUM(Loc1:Locn) or = SUM(n1,n2,)
计数= COUNT(Loc1:Locn) or = COUNT(n1,n2,)
两个数的幂= POWER(Loc1,Loc2) or = POWER(number, power)
多个数的最大值= MAX(Loc1:Locn) or = MAX(n1,n2,)
乘积= PRODUCT(Loc1:Locn) or = PRODUCT(n1,n2,)
阶乘= FACT(Locn) or = FACT(number)
绝对数字= ABS(Locn) or = ABS(number)
今天的日期=TODAY()
转换成小写= LOWER(Locn) or = LOWER(text)
平方根= SQRT(locn) or = SQRT(number)
SXSSFWorkbook的设置与HSSFWorkbook设置一样,只是改HSSFCellStyle为CellStyle和HSSFPalette 为Palatte。
最后需要查看API的道友,可查看此链接:http://www.yiibai.com/apache_poi/apache_poi_cells.html

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: