# 导出默认样式 token `ExcelStyleTokens` 提供全局默认样式,配置前缀为 `excel.export-style`,可放在服务配置或 Nacos 公共配置中。未配置的值使用代码默认值,表头与正文可以分别设置字体、字号、加粗、文字颜色、背景颜色、行高、对齐、换行和缩进。 当前仅 `/admin/user/export-async` 接入。原同步用户导出和其他业务导出的样式不受影响,已有模板无需修改。 ```yaml excel: export-style: header: font-name: Microsoft YaHei font-size: 11 bold: true font-color: "#FFFFFF" background-color: "#1F4E78" row-height: 36 alignment: CENTER wrap-text: true indent: 0 body: font-name: Microsoft YaHei font-size: 11 bold: false font-color: "#243247" background-color: "#FFFFFF" row-height: 26 alignment: LEFT wrap-text: false indent: 1 striped: true alternate-row-color: "#F3F6FA" border-style: THIN border-color: "#DCE3EC" column-width: 22 # 可选:按 Java 字段名覆盖业务默认列宽。[] 保留字段名大小写。 column-widths: "[userId]": 24 "[username]": 20 "[deptName]": 28 "[roleNameList]": 30 freeze-header: true auto-filter: true show-grid-lines: false ``` 颜色支持带或不带 `#` 的六位 RGB;YAML 中带 `#` 的颜色必须加引号。字号与行高单位为磅,列宽单位为 Excel 字符宽度(1~255)。配置绑定时校验颜色及尺寸。字体由打开 Excel 的电脑解析,可改为该电脑已安装的中文字体。边框样式与颜色应用于表头列分隔和正文水平分隔,正文不绘制完整网格。 列宽优先级:配置中的 `column-widths` > 业务默认列宽 > `column-width`。用户导出已按编号、手机、邮箱、部门、角色和日期等字段分别设置列宽,不扫描全部明细来计算列宽。长文本保持原值,默认正文不换行;需要多行显示时可同时增加 `body.row-height` 并开启 `body.wrap-text`。开启交替行底纹时,偶数数据行使用 `alternate-row-color`,其余数据行使用 `body.background-color`。 后续导出可显式注册处理器来复用样式(本次不接入其他接口): ```java builder.registerWriteHandler(new ExcelExportStyleHandler(excelConfig.getExportStyle())); ``` 每次导出创建独立处理器,在提交任务时固定当前 token。处理器只支持 XLSX,缓存工作簿中的字体与单元格样式,条纹按实际行号计算,适用于分批流式写入。现有转换器、单元格类型、数据格式及导出列保持原样。固定格式模板应继续使用自身样式,不自动注册此处理器。