@@ -99,5 +99,73 @@ public static void SetAllSheetAutoCompute(this IWorkbook workbook)
9999 }
100100
101101 #endregion
102+
103+ #region AddSheet(添加工作表)
104+
105+ /// <summary>
106+ /// 添加工作表
107+ /// </summary>
108+ /// <param name="workbook">工作簿</param>
109+ /// <param name="name">工作表名称</param>
110+ /// <param name="heads">表头</param>
111+ public static ISheet AddSheet ( this IWorkbook workbook , string name , List < string > heads )
112+ {
113+ var sheet = workbook . CreateSheet ( name ) ;
114+ var style = workbook . DefaultHeadStyle ( ) ;
115+ var row = sheet . CreateRow ( 0 ) ;
116+ row . Height = 20 * 20 ;
117+ heads . ForEach ( item => row . Value ( heads . IndexOf ( item ) , item , style ) ) ;
118+ return sheet ;
119+ }
120+
121+ #endregion
122+
123+ #region DefaultHeadStyle(默认表头样式)
124+
125+ /// <summary>
126+ /// 默认表头样式
127+ /// </summary>
128+ /// <param name="workbook">工作簿</param>
129+ public static ICellStyle DefaultHeadStyle ( this IWorkbook workbook )
130+ {
131+ var style = workbook . CreateCellStyle ( ) ;
132+ var font = workbook . CreateFont ( ) ;
133+ font . Boldweight = short . MaxValue ; // 加粗
134+
135+ style . FillForegroundColor = 13 ; // 13为黄色
136+ style . FillPattern = FillPattern . SolidForeground ;
137+ style . BorderTop = BorderStyle . Thin ;
138+ style . BorderBottom = BorderStyle . Thin ;
139+ style . BorderLeft = BorderStyle . Thin ;
140+ style . BorderRight = BorderStyle . Thin ;
141+ style . Alignment = HorizontalAlignment . Center ;
142+ style . VerticalAlignment = VerticalAlignment . Center ;
143+ style . SetFont ( font . DefaultFont ( ) ) ;
144+ return style ;
145+ }
146+
147+ #endregion
148+
149+ #region DefaultBodyStyle(默认正文样式)
150+
151+ /// <summary>
152+ /// 默认正文样式
153+ /// </summary>
154+ /// <param name="workbook">工作簿</param>
155+ public static ICellStyle DefaultBodyStyle ( this IWorkbook workbook )
156+ {
157+ var style = workbook . CreateCellStyle ( ) ;
158+ var font = workbook . CreateFont ( ) ;
159+ style . Alignment = HorizontalAlignment . Center ;
160+ style . VerticalAlignment = VerticalAlignment . Center ;
161+ style . BorderTop = BorderStyle . Thin ;
162+ style . BorderBottom = BorderStyle . Thin ;
163+ style . BorderLeft = BorderStyle . Thin ;
164+ style . BorderRight = BorderStyle . Thin ;
165+ style . SetFont ( font . DefaultFont ( ) ) ;
166+ return style ;
167+ }
168+
169+ #endregion
102170 }
103171}
0 commit comments