1.public ActionResult excelPrint() {
2. HSSFWorkbook workbook = new HSSFWorkbook();// 创建一个Excel文件
3. HSSFSheet sheet = workbook.createSheet();// 创建一个Excel的Sheet
4. sheet.createFreezePane(1, 3);// 冻结
5. // 设置列宽
6. sheet.setColumnWidth(0, 1000);
7. sheet.setColumnWidth(1, 3500);
8. sheet.setColumnWidth(2, 3500);
9. sheet.setColumnWidth(3, 6500);
10. sheet.setColumnWidth(4, 6500);
11. sheet.setColumnWidth(5, 6500);
12. sheet.setColumnWidth(6, 6500);
13. sheet.setColumnWidth(7, 2500);
14. // Sheet样式
15. HSSFCellStyle sheetStyle = workbook.createCellStyle();
16. // 背景色的设定
17. sheetStyle.setFillBackgroundColor(HSSFColor.GREY_25_PERCENT.index);
18. // 前景色的设定
19. sheetStyle.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index);
20. // 填充模式
21. sheetStyle.setFillPattern(HSSFCellStyle.FINE_DOTS);
22. // 设置列的样式
23. for (int i = 0; i <= 14; i++) {
24. sheet.setDefaultColumnStyle((short) i, sheetStyle);
25. }
26. // 设置字体
27. HSSFFont headfont = workbook.createFont();
28. headfont.setFontName("黑体");
29. headfont.setFontHeightInPoints((short) 22);// 字体大小
30. headfont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);// 加粗
31. // 另一个样式
32. HSSFCellStyle headstyle = workbook.createCellStyle();
33. headstyle.setFont(headfont);
34. headstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
35. headstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
36. headstyle.setLocked(true);
37. headstyle.setWrapText(true);// 自动换行
38. // 另一个字体样式
39. HSSFFont columnHeadFont = workbook.createFont();
40. columnHeadFont.setFontName("宋体");
41. columnHeadFont.setFontHeightInPoints((short) 10);
42. columnHeadFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
43. // 列头的样式
44. HSSFCellStyle columnHeadStyle = workbook.createCellStyle();
45. columnHeadStyle.setFont(columnHeadFont);
46. columnHeadStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
47. columnHeadStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
48. columnHeadStyle.setLocked(true);
49. columnHeadStyle.setWrapText(true);
50. columnHeadStyle.setLeftBorderColor(HSSFColor.BLACK.index);// 左边框的颜色
51. columnHeadStyle.setBorderLeft((short) 1);// 边框的大小
52. columnHeadStyle.setRightBorderColor(HSSFColor.BLACK.index);// 右边框的颜色
53. columnHeadStyle.setBorderRight((short) 1);// 边框的大小
54. columnHeadStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单元格的边框为粗体
55. columnHeadStyle.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色
56. // 设置单元格的背景颜色(单元格的样式会覆盖列或行的样式)
57. columnHeadStyle.setFillForegroundColor(HSSFColor.WHITE.index);
58.
59. HSSFFont font = workbook.createFont();
60. font.setFontName("宋体");
61. font.setFontHeightInPoints((short) 10);
62. // 普通单元格样式
63. HSSFCellStyle style = workbook.createCellStyle();
64. style.setFont(font);
65. style.setAlignment(HSSFCellStyle.ALIGN_LEFT);// 左右居中
66. style.setVerticalAlignment(HSSFCellStyle.VERTICAL_TOP);// 上下居中
67. style.setWrapText(true);
68. style.setLeftBorderColor(HSSFColor.BLACK.index);
69. style.setBorderLeft((short) 1);
70. style.setRightBorderColor(HSSFColor.BLACK.index);
71. style.setBorderRight((short) 1);
72. style.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单元格的边框为粗体
73. style.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色.
74. style.setFillForegroundColor(HSSFColor.WHITE.index);// 设置单元格的背景颜色.
75. // 另一个样式
76. HSSFCellStyle centerstyle = workbook.createCellStyle();
77. centerstyle.setFont(font);
78. centerstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中
79. centerstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中
80. centerstyle.setWrapText(true);
81. centerstyle.setLeftBorderColor(HSSFColor.BLACK.index);
82. centerstyle.setBorderLeft((short) 1);
83. centerstyle.setRightBorderColor(HSSFColor.BLACK.index);
84. centerstyle.setBorderRight((short) 1);
85. centerstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单元格的边框为粗体
86. centerstyle.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色.
87. centerstyle.setFillForegroundColor(HSSFColor.WHITE.index);// 设置单元格的背景颜色.
88.
HSSFWorkBooK 设置excel样式用法
最新推荐文章于 2024-09-14 08:58:54 发布