NPOI导Excel样式设置
2015-10-30 15:14
489 查看
一、创建一个Excel
//创建一个工作簿 XSSFWorkbook workbook = new XSSFWorkbook(); //创建一个页 ISheet sheet = workbook.CreateSheet("sheet1"); //创建一行 IRow row = sheet.CreateRow(0); //创建一列 ICell cell = row.CreateCell(0);
二、设置字体
ICellStyle style = workbook.CreateCellStyle();//创建样式对象 IFont font = workbook.CreateFont(); //创建一个字体样式对象 font.FontName = "方正舒体"; //和excel里面的字体对应 font.Color = new HSSFColor.PINK().GetIndex();//颜色参考NPOI的颜色对照表(替换掉PINK()) font.IsItalic = true; //斜体 font.FontHeightInPoints = 16;//字体大小 font.Boldweight = short.MaxValue;//字体加粗 style.SetFont(font); //将字体样式赋给样式对象 cell.CellStyle = style; //把样式赋给单元格
三、设置单元格
1、单元格前景色
ICellStyle style=workbook.CreateCellStyle(); style.FillForegroundColor = 14; //具体数字代表的颜色看NPOI颜色对照表 style.FillPattern = FillPatternType.SOLID_FOREGROUND;
2、单元格宽高
行高:row.Height = 30 * 20; //行高为30列宽:sheet.SetColumnWidth(3, 13 * 256) //第4列的列宽为13
3、合并单元格
单元格合并后,样式以左上角的单元格为准//CellRangeAddress四个参数为:起始行,结束行,起始列,结束列
sheet.AddMergedRegion(new CellRangeAddress(0, 0, 0, 10));
4、水平居中
style.Alignment = HorizontalAlignment.CENTER;5、设置公式
不需要写“=”号cell.CellFormula = "公式";
6.边框
//上下左右styleFont.BorderTop = NPOI.SS.UserModel.BorderStyle.THIN;
styleFont.BorderBottom = NPOI.SS.UserModel.BorderStyle.THIN;
styleFont.BorderLeft = NPOI.SS.UserModel.BorderStyle.THIN;
styleFont.BorderRight = NPOI.SS.UserModel.BorderStyle.THICK;
颜色对照表:
颜色 | 测试 | Class名称 | short |
Test颜色 | Black | 8 | |
Test颜色 | Brown | 60 | |
Test颜色 | Olive_Green | 59 | |
Test颜色 | Dark_Green | 58 | |
Test颜色 | Dark_Teal | 56 | |
Test颜色 | Dark_Blue | 18 | |
Test颜色 | Indigo | 62 | |
Test颜色 | Grey_80_PERCENT | 63 | |
Test颜色 | Dark_Red | 16 | |
Test颜色 | Orange | 53 | |
Test颜色 | DARK_YELLOW | 19 | |
Test颜色 | Green | 17 | |
Test颜色 | Teal | 21 | |
Test颜色 | Blue | 12 | |
Test颜色 | Blue_Grey | 54 | |
Test颜色 | Grey_50_PERCENT | 23 | |
Test颜色 | Red | 10 | |
Test颜色 | LIGHT_ORANGE | 52 | |
Test颜色 | LIME | 50 | |
Test颜色 | SEA_GREEN | 57 | |
Test颜色 | AQUA | 49 | |
Test颜色 | LIGHT_BLUE | 48 | |
Test颜色 | VIOLET | 20 | |
Test颜色 | GREY_40_PERCENT | 55 | |
Test颜色 | Pink | 14 | |
Test颜色 | Gold | 51 | |
Test颜色 | Yellow | 13 | |
Test颜色 | BRIGHT_GREEN | 11 | |
Test颜色 | TURQUOISE | 15 | |
Test颜色 | SKY_BLUE | 40 | |
Test颜色 | Plum | 61 | |
Test颜色 | GREY_25_PERCENT | 22 | |
Test颜色 | Rose | 45 | |
Test颜色 | Tan | 47 | |
Test颜色 | LIGHT_YELLOW | 43 | |
Test颜色 | LIGHT_GREEN | 42 | |
Test颜色 | LIGHT_TURQUOISE | 41 | |
Test颜色 | PALE_BLUE | 44 | |
Test颜色 | LAVENDER | 46 | |
Test颜色 | White | 9 | |
Test颜色 | CORNFLOWER_BLUE | 24 | |
Test颜色 | LEMON_CHIFFON | 26 | |
Test颜色 | MAROON | 25 | |
Test颜色 | ORCHID | 28 | |
Test颜色 | CORAL | 29 | |
Test颜色 | ROYAL_BLUE | 30 | |
Test颜色 | LIGHT_CORNFLOWER_BLUE | 31 | |
Test颜色 | AUTOMATIC | 64 |
四、用文件流方式下载NPOI excel
//生成excel文件流下载 using (MemoryStream ms =new MemoryStream()) { workbook.write(ms); string fileName = HttpUtility.UrlEncode("test.xlsx"); Response.AddHeader("content-Disposition", "attachment;filename=" + fileName); //增加这指定长度防止导出的excel有不可读取内容。 Response.AddHeader("content-Length", ms.ToArray().Length.ToString()); Response.BinaryWrite(ms.ToArray()); Response.End(); }
相关文章推荐
- CSS样式命名规范
- sencha touch 项目的样式不起作用了
- css :before :after伪类
- CSS3 target 伪类不得不说那些事儿(纯CSS实现tab切换)
- js从写alert样式
- C#实现日历样式的下拉式计算器
- CSS3 重置iphone浏览器按钮input,select等表单元素的默认样式
- CSS控制样式的三种方式(优先级对比验证)
- GeoServer系列之二.-设置WMS的显示样式
- 安卓开发学习之013 EditText应用详解(样式、背景、光标、错误提示、自定义带删除按钮、无弹出菜单)
- CSS学习笔记一 如何清除浮动
- WPF GroupBox 样式分享
- Web性能优化-合并js与css,减少请求
- css hack
- CSS3 flex 伸缩布局盒模型
- HTML CSS + DIV实现整体布局
- FlycoDialog_Master多样式对话框
- 复习补充一下以前学习的HTML+CSS的内容(二)
- DIV CSS 网页兼容全搞定 (IE6 IE7 IE8 IE9 火狐 谷歌)
- css怎样使顶端悬浮导航栏不遮住下面一层页面内容