ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Excel 同一单元格显示不同颜色

Excel 同一单元格显示不同颜色

原创 Linux操作系统 作者:aben_xml 时间:2009-03-26 09:31:59 0 删除 编辑
之前 POI 生成 excel 文件, 为了美观, 可户要求在同一单元格里面显示不同颜色,GG 了不少时间, 没找到相应的做法.都打电话个客户商量是否不去改变颜色, 好在客户也给我们时间, 让我们再找找,不管怎样,总算是有了好结果.很简单的做法:

HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.createSheet();
HSSFRow row = sheet.createRow((short) 1);
  HSSFCell cell = row.createCell((short)1);

  HSSFCellStyle. cellStyle=workbook.createCellStyle();  
  cellStyle.setWrapText(true); 
                       
  HSSFFont font = workbook.createFont();
  font.setFontHeightInPoints((short) 10); // 字体高度
  font.setColor(HSSFColor.RED.index); // 字体颜色
  font.setFontName("Arial"); // 字体
  font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 宽度
  font.setItalic(false); // 是否使用斜体
 
  HSSFFont font1 = workbook.createFont();
  font1.setFontHeightInPoints((short) 10); // 字体高度
  font1.setColor(HSSFColor.BLUE.index); // 字体颜色
  font1.setFontName("Arial"); // 字体
  font1.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 宽度
  font1.setItalic(true); // 是否使用斜体

HSSFRichTextString ts= new HSSFRichTextString("aben test \n\rethern test");
  ts.applyFont(0,9,font);
  ts.applyFont(10,ts.length()-1,font1);
  cell.setCellType(HSSFCell.CELL_TYPE_STRING);
  cell.setCellValue(ts);   

FileOutputStream fOut = new FileOutputStream("e:\\temp\\test.xls");
  workbook.write(fOut);
  fOut.flush();
  fOut.close();
  System.out.println("文件生成...");

poi-3.0.1.jar 测试通过

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/129556/viewspace-578442/,如需转载,请注明出处,否则将追究法律责任。

上一篇: JFreeChart Demo Source
下一篇: 打抱不平
请登录后发表评论 登录
全部评论

注册时间:2008-04-29

  • 博文量
    47
  • 访问量
    58064