HotXLS 中文更新日志
面向 HotXLS 用户的中文版本历史,包含 XLS / XLSX 增强、修复、导出更新、兼容性变化和文档更新。
2026-05-18 Version 2.28.1
- 经典 XLS 门面新增便捷 API。IXLSRange 新增只读 Width / WidthInPixels 宽度辅助属性和 SaveAsCSV(FileName);IXLSWorksheet 与 IXLSWorkbook 新增 SaveAsCSV(FileName / Stream) 重载,用于导出 UsedRange 或活动工作表;IXLSPageSetup 新增 Order、Draft、BlackAndWhite、PrintNotes 和只读 IsFitToPages。SETUP 记录写入/读取现在会保留这些打印标志。
2026-05-18 Version 2.28.0
- TXLSXWorkbook 新增 RTF 导出功能。新增 SaveAsRTF 4 重载(FileName / Stream × 默认活动工作表 / 显式 SheetIndex),将指定工作表写为 RTF 1.6 文档的简单表格。列宽从工作表 ColWidth 数据导出(1 个 Excel 字符单位约等于 96 RTF twips),未设自定义宽度的列回退到 StandardWidth(若有),否则使用 809 twips(~8.43 字符)。按单元格 FontIndex 应用粗体(\\b)、斜体(\\i)和字号(\\fsN,单位半磅)。非 ASCII 字符按 RTF 1.6 §2.4.2 编码为带符号 16 位 \\uN? unicode 转义,覆盖完整 BMP 范围。合并单元格不处理 span —— 原点格输出内容,范围内其余格输出空格。默认 SheetIndex 写活动工作表,越界返回 -1。空工作表输出最小合法 RTF 文档。
2026-05-18 Version 2.27.0
- TXLSXWorkbook 新增 HTML 导出功能。新增 SaveAsHTML 4 重载(FileName / Stream × 默认活动工作表 / 显式 SheetIndex),将指定工作表写为带 UTF-8 BOM 的 HTML 文档。输出格式为 <table> 置于简洁 HTML 页面内。合并单元格映射为 colspan / rowspan 属性。单元格样式以 inline CSS 输出:字体名称、字号(pt)、粗体(font-weight:bold)、斜体(font-style:italic)、删除线(text-decoration:line-through)及显式字体颜色;xlsxFillSolid 图案的前景色作为 background-color;水平对齐(left / center / right / justify)和 WrapText(white-space:pre-wrap)。日期 Variant 渲染为 'yyyy-mm-dd hh:nn:ss';富文本单元格展平为各段文字拼接。主题色暂不解析(简单 HTML 导出不依赖 theme1.xml),静默跳过。默认 SheetIndex 写活动工作表,越界返回 -1。
2026-05-18 Version 2.26.0
- TXLSXFont / TXLSXFill / TXLSXBorderEdge 新增主题色 + 索引色 + 明暗调(tint/shade)支持。每个颜色槽位除原有 RGB Color 之外,新增三个字段:ColorTheme(Integer;-1=未设;0..11=OOXML 主题色槽)、ColorIndex(Integer;-1=未设;0..63=OOXML legacy 调色板槽,与 Workbook.IndexedColor[N] / XlsxDefaultIndexedPalette 联动)、TintAndShade(Double 区间 [-1.0, 1.0];仅在 theme 模式下输出)。TXLSXFill 的 Foreground / Background 各自独立 3 字段。写入优先级:theme > indexed > rgb;原有的 "ColorIsAuto = True" 路径继续整体抑制元素输出。SaveAs / Open 完整 round-trip <color theme="N" tint="..."/> 和 <color indexed="N"/> 在 font / fill / border 三处的属性集。簿记:TXLSXBorders.LookupOrAdd 的 edge 比较加上 3 个新字段,避免主题色边与 RGB 边在池里误合并。
2026-05-18 Version 2.25.0
- TXLSXWorkbook 新增外部工作簿链接 round-trip。新类型:TXLSXExternalLink(Target URL + SheetNames 列表)+ TXLSXExternalLinks 集合。TXLSXWorkbook.ExternalLinks 属性暴露集合;Add(Target) 追加并返回新链接供调用方填充。SaveAs 在 xl/workbook.xml 输出工作簿级 <externalReferences> 块,在 xl/_rels/workbook.xml.rels 加 externalLink rel(rid 排在 rid 链尾,原有 rid 不动),并为每个条目写 xl/externalLinks/externalLink{N}.xml part(<externalBook><sheetNames>)+ 同名 .rels 文件(指向远端工作簿 URL,TargetMode="External")+ 对应 ContentType Override。Open 端从 index 1 起扫 externalLink{N}.xml + .rels 对,首个不存在即停止。本版本仅 round-trip Target URL + SheetNames;<sheetDataSet> 内的缓存单元值不保留。
2026-05-18 Version 2.24.0
- TXLSXRange 新增 composing 边框助手 SetBorders。新枚举 TXLSXBorderEdgeKind(xlsxEdgeAll / Outline / Inside / InsideHorizontal / InsideVertical / Top / Bottom / Left / Right / DiagonalUp / DiagonalDown)选定要写的边。SetBorders(Kind, Style, Color) / SetBorders(Kind, Style)(缺省色为不透明黑)遍历 range 内每个单元,按位置算出 edge mask(角格写 2 条 outline 边、边格 1 条、内部格走 inside 网格线等),把 Style + Color 应用到 cell 当前 border 的克隆上(所以连续调用 Outline + Inside 是叠加而非覆盖),再走 workbook 级 lookup-or-add 入 Workbook.Borders 池,把得到的 1-based BorderIndex 写回 cell。新 TXLSXBorders.LookupOrAdd 助手对空 border 返 0,避免 pool 因 no-op 入库而膨胀。
2026-05-18 Version 2.23.0
- TXLSXWorkbook 新增 CSV 导出系列重载。新入口:SaveAsCSV(FileName) / SaveAsCSV(FileName, SheetIndex, Delimiter) / SaveAsCSV(Stream) / SaveAsCSV(Stream, SheetIndex, Delimiter),把指定工作表的有数据矩形按 UTF-8 + 带 BOM + CRLF 换行写出。无参版本默认导出活动工作表 + 逗号分隔;带 Delimiter 参数的版本可接任意 WideChar(最常见 TAB #9 = TSV)。字段引用遵循 RFC 4180:含分隔符、双引号、CR、LF 的字段整体加双引号包裹,内嵌双引号按双双引号转义。日期值统一渲染为 'yyyy-mm-dd hh:nn:ss';rich-text 单元格扁平化为各 run 文本拼接;外接矩形内部的空单元以空字段输出,行尾的空单元不再补 padding(每行至最后一个有数据列结束)。
2026-05-18 Version 2.22.0
- TXLSXWorkbook 新增工作簿级 indexed 色板覆盖支持。新入口:IndexedColor[Index: Integer]: LongWord(读 / 写,有效槽位 0..63,ARGB LongWord)、HasCustomIndexedColor(Index): Boolean(查询某槽是否被用户覆盖)、CustomIndexedColorCount: Integer(已覆盖槽数;0 = 写出时不发射 <colors> 块)、ResetIndexedColors: procedure(清除所有覆盖)。新常量 XlsxDefaultIndexedPalette 对外暴露 OOXML / ECMA-376 legacy 调色板的 0..63 槽默认值。SaveAs 仅在至少有一个槽被覆盖时输出 <colors><indexedColors> + 64 个 <rgbColor> 子元素(未覆盖槽用默认值),未触碰调色板的工作簿重存后输出依然干净。Open 在解析时只入库与默认值不同的槽,保证 round-trip 最小化。越界(<0 或 >63)的槽位赋值会被静默丢弃,不抛异常。
2026-05-18 Version 2.21.0
- TXLSXWorksheet 新增 6 项视图显示属性。Zoom: Integer 是 Excel 状态栏的缩放百分比(10..400,默认 100;越界赋值在写入时 clamp)。DisplayGridLines / DisplayZeros: Boolean(默认 True),设为 False 时分别隐藏网格线 / 把 0 值单元渲染为空。DisplayRightToLeft: Boolean(默认 False)把工作表整体翻转为 RTL 布局(阿拉伯 / 希伯来等)。StandardWidth / StandardHeight: Double 设默认列宽(Excel 字符单位)/ 默认行高(点);0 = 未设置时 Excel 应用内建 8.43 / 15 默认。SaveAs 在偏离 Excel 默认时输出 <sheetView showGridLines / showZeros / rightToLeft / zoomScale> 和 <sheetFormatPr defaultColWidth / defaultRowHeight>;Open 反向解析。原有的 freeze pane / tabSelected 处理逻辑不变,现统一走同一个 <sheetView> 发射器。
2026-05-17 Version 2.20.7
- TXLSXWorkbook 新增 TStream 重载用于内存级序列化。新入口:SaveAs(Stream: TStream) / SaveAs(Stream: TStream; FileFormat: TXLSXFileFormat) 把整个 .xlsx 包写入 stream(从当前位置开始),Open(Stream: TStream) 反向读取。调用方拥有 stream,负责 Free。常用于 HTTP 响应、blob 存储、内存管线、绕开本地文件系统的单元测试等场景。已有的文件路径 SaveAs / Open 重载行为不变,内部都委托给同一个 internal helper。
2026-05-17 Version 2.20.6
- TXLSXDefinedName 新增 Hidden / Visible / Comment 三个属性。Hidden 映射到 OOXML <definedName hidden="1"/> 属性(默认 False / Visible=True;True 时该名称在 Excel 名称管理器界面里隐藏)。Visible 是 Hidden 的反向 Boolean 别名,调用代码更易读。Comment 映射到 <definedName comment="..."/>。SaveAs 在两个属性偏离默认值时输出对应属性;Open 反向解析。已有的 SheetIndex(通过 localSheetId 绑定 Local scope)行为不变。
2026-05-17 Version 2.20.5
- TXLSXFont 新增 5 个缺失属性。新增 TXLSXFontVertAlign 枚举(xlsxVertAlignBaseline / Superscript / Subscript),通过单一 VertAlign 属性映射 Excel 的「上标」「下标」字体复选框(UI 中互斥)。新增 OutlineFont 和 Shadow 两个布尔属性,对应 Excel 字体效果。新增 Family 整数属性(OOXML 字体族号:1=Roman / 2=Swiss / 3=Modern / 4=Script / 5=Decorative;0=未设置)和 CharSet 整数属性(GDI 字符集号:0=ANSI / 1=Default / 134=GB2312 / 136=ChineseBig5 等;-1=未设置)。SaveAs 在 <font> 内输出对应的 <vertAlign> / <outline/> / <shadow/> / <family> / <charset> 子元素;Open 反向解析。ColorIndex / ThemeColor / TintAndShade 留待主题色 milestone 一并处理。
2026-05-17 Version 2.20.4
- 新增边框对角线方向开关。TXLSXBorder 新增 DiagonalUp: Boolean 和 DiagonalDown: Boolean 两个属性。两个开关共享已有的 Diagonal 边的 Style 和 Color,控制 Excel 渲染哪条对角线(向上 = 左下到右上、向下 = 左上到右下,或同时画两条)。SaveAs 在 <border> 元素上输出 diagonalUp / diagonalDown 属性;Open 反向解析。之前引擎只输出 Diagonal 边但没有方向信息,Excel 不会绘制任何对角线。
2026-05-17 Version 2.20.3
- 新增工作簿 Date1904 时间基准开关。TXLSXWorkbook 新增 Date1904: Boolean 属性,在 Windows 1900 时间基准(默认,与 Excel for Windows 一致)和 Mac 1904 时间基准(Excel for Mac 老格式)之间切换。SaveAs 在设为 True 时输出 <workbookPr date1904="1"/>;Open 反向读取。本属性是元数据开关——引擎不对存储的日期序列做转换;调用方应在赋值 TDateTime 单元前先设 Date1904,才能让 round-trip 落在正确历法上。
2026-05-17 Version 2.20.2
- 新增自动筛选每列过滤规则支持。新增类型 TXLSXAutoFilterOp 枚举(Equal / NotEqual / GreaterThan / LessThan / GreaterOrEqual / LessOrEqual)、TXLSXAutoFilterColumn 类(ColId + 1 或 2 个 criteria + AND/OR 连接符)、TXLSXAutoFilterColumns 集合。TXLSXWorksheet 新增 AutoFilterColumns 属性和 AddAutoFilterColumn(ColId, Op, Criteria) / AddAutoFilterColumn(ColId, Op1, Criteria1, Op2, Criteria2, AndConnector) / ClearAutoFilterColumns 便捷方法。SaveAs 在 criteria 不为空时把现有的 <autoFilter ref="..."/> 展开成 <filterColumn colId=N><customFilters and=0|1><customFilter operator="..." val="..."/>...</customFilters></filterColumn> 子结构;Open 反向解析。之前引擎只存 sqref,Excel 打开后筛选下拉是空的。
2026-05-17 Version 2.20.1
- TXLSXWorksheet 新增手工分页符支持。新增入口:AddRowBreak(BeforeRow) / AddColBreak(BeforeCol) 在指定行 / 列之前插入水平 / 垂直分页符(Excel UI「Before」语义——row N 开始新页)。HasRowBreak / HasColBreak 检查;RemoveRowBreak / RemoveColBreak 单条删除;ClearRowBreaks / ClearColBreaks / ClearAllPageBreaks 清空。RowBreakCount / ColBreakCount + 索引访问的 RowBreaks(Index) / ColBreaks(Index) 暴露已存的 1-based「Before」索引,方便遍历。SaveAs 在 <headerFooter> 与 <drawing> 之间输出 <rowBreaks> / <colBreaks>,子元素 <brk id="N-1" max="..." man="1"/>;Open 反向解析。
2026-05-17 Version 2.20.0
- 新增工作表可见性(隐藏 / 极度隐藏)、单选状态、活动工作表的跟踪支持。新增类型 TXLSXSheetVisibility 枚举(xlsxSheetVisible / xlsxSheetHidden / xlsxSheetVeryHidden)。TXLSXWorksheet 新增 Visibility、Visible(Boolean 别名)、IsSelected(只读)三个属性。TXLSXSheets 新增 ActiveIndex、Activate(Index)、Move(FromIndex, ToIndex)。TXLSXWorkbook 新增 ActiveSheet 代理属性。SaveAs 在工作簿的 <sheet> 上输出 state 属性,在 active 不是 0 时输出 <bookViews><workbookView activeTab=N/></bookViews>,在活动表的 <sheetView> 上输出 tabSelected="1";Open 反向解析。第一张新增的 sheet 默认 visible+active,旧调用代码无需改动。
2026-05-17 Version 2.19.2
- TXLSXWorksheet 新增 4 个 PageSetup 属性开关,补齐 OOXML <pageSetup> 覆盖:BlackAndWhite(黑白打印)、Draft(草稿模式,跳过图形以加快预览)、PrintNotes(打印批注,按显示位置)、PrintOverThenDown(页面遍历顺序从默认「下→右」切换到「右→下」)。SaveAs 在对应属性被启用时输出 blackAndWhite / draft / cellComments / pageOrder 属性;Open 反向解析。默认全部 False,未改动的工作表不会多出额外属性。
2026-05-17 Version 2.19.1
- TXLSXWorksheet 新增页眉 / 页脚的三段式(左 / 中 / 右)便捷属性:LeftHeader / CenterHeader / RightHeader 和 LeftFooter / CenterFooter / RightFooter。每个属性读取或写入已有 HeaderText / FooterText 原始字符串里对应的 &L / &C / &R 段;任意写入一段都会重新组装完整原始字符串,所以现有 round-trip 写入器和读取器不需要改动。
- 新增 sheet 级打印选项开关:CenterHorizontally、CenterVertically、PrintGridlines、PrintHeadings。SaveAs 在 4 项任意一项被启用时输出 <printOptions horizontalCentered/verticalCentered/gridLines/headings/>;Open 反向解析。默认全部 False,未改动的工作表不会多出 <printOptions/> 元素。
- 新增 sheet 级 PrintArea / PrintTitleRows / PrintTitleCols 往返支持。这三项对应 OOXML 工作簿级的内置 _xlnm.Print_Area 和 _xlnm.Print_Titles 定义名,通过 localSheetId 绑定到具体 sheet。PrintArea 接受裸 A1 引用(如 "$A$1:$D$10");PrintTitleRows 和 PrintTitleCols 接受行 / 列方向引用(如 "$1:$3" 或 "$A:$B"),写入时合并为一条 Print_Titles 记录。写入端会给 sheet 名加正确的引号(含空格或特殊字符时单引号包裹);读取端剥离 sheet 前缀并路由回对应 sheet 的字段,不会污染用户的 TXLSXWorkbook.DefinedNames 集合。
2026-05-17 Version 2.19.0
- TXLSXWorksheet 新增行 / 列的插入、删除操作,并同步整张 sheet 内所有几何位置。新增入口:InsertRows(BeforeRow, Count)、DeleteRows(StartRow, Count)、InsertCols(BeforeCol, Count)、DeleteCols(StartCol, Count)。Insert 系列把指定位置及之后的行 / 列推开 Count;Delete 系列移除 [Start, Start+Count-1] 这段并把后面的行 / 列回拉 Count。
- 位移会自动应用到所有依赖行 / 列位置的内容:单元格锚点(Cells)、合并区域四角(MergedCells——横跨删除区域的合并块会被裁切到剩余边界,完全位于删除区域内的合并块会被丢弃)、行 / 列 metadata 列表(FRowHeights / FColWidths / outline / hidden / collapsed)、超链接和批注的锚点(位于删除区域内的条目被丢弃)、FreezePane(FFreezeRow / FFreezeCol)、AutoFilterRange、以及每个 ConditionalFormat / DataValidation / Table 上的 Range 字符串(完全位于删除区域内的条目被丢弃)。
- 配套支撑:TXLSXHyperlinks、TXLSXComments、TXLSXConditionalFormats、TXLSXDataValidations、TXLSXTables 新增 Delete(Index) 方法,方便位移逻辑按需删除单条条目而不是清空整个集合。
- 本次未实现:Images 和 Charts 不参与位移(它们的 EMU 像素锚点与单元格栅格解耦,正确位移需要重算 EMU 偏移,留待后续版本);DefinedNames 中的公式串也未做改写。
2026-05-17 Version 2.18.2
- 新增列宽 / 行高自动适配(AutoFit)辅助方法。TXLSXWorksheet 新增 AutoFitColumn(ACol) / AutoFitColumns(ColMin, ColMax) 和 AutoFitRow(ARow) / AutoFitRows(RowMin, RowMax);TXLSXRange 新增 AutoFitColumns 和 AutoFitRows,对 range 覆盖的列 / 行转发到 worksheet 层。宽度估算用 Excel 字符单位(Calibri 11pt 为基准;ASCII 字符算 1 单位,CJK 字符算 2 单位),px/char 系数 1.20、单元两侧加 1.0 padding,结果 clamp 到 [8.43, 255.0]。行高默认 15 pt,每多一个换行符增加 12.75 pt。EntireRow / EntireColumn 等覆盖整行/整列的 range 在 AutoFit 时会自动 clamp 到最后一个有内容的行/列,避免遍历到 Excel 网格上限。
2026-05-17 Version 2.18.1
- XLSX 引擎新增单元级保护状态(Locked / FormulaHidden)的往返支持。TXLSXCell 新增 Locked: Boolean(默认 True)和 FormulaHidden: Boolean(默认 False)便捷属性,对应 Excel 的单元保护模型。底层用新增的工作簿级 TXLSXProtections 池存储 (Locked, FormulaHidden) 组合,TXLSXCell.ProtectionIndex(1-based)引用池条目;写便捷属性时自动在池里查找或追加对应条目。默认值组合 (Locked=True, FormulaHidden=False) 会被折叠成 ProtectionIndex=0,保持普通单元的池为空。
- TXLSXRange 新增 SetLocked(ALocked) 和 SetFormulaHidden(AHidden) 批量方法,对整片区域解锁/隐藏公式时只做一次池查找/追加并应用到区域内每个单元,避免每个单元各自查找。
- 同步补齐 writer / reader 链路。SaveAs 在 alignment 区段之后为 Protections 池中每条记录追加一个 cellXf,里面嵌入 <protection locked="N" hidden="M"/>;Open 解析 <protection> 回填到 Workbook.Protections,并通过 ParseStylesXml 和 ParseWorksheetXml 新增的 CellXfProtMap 参数把 cellXf 的 protection index 映射到 TXLSXCell.ProtectionIndex,与已有的 font/fill/border/numFmt/alignment 索引一起往返。
2026-05-17 Version 2.18.0
- TXLSXWorksheet 新增 TXLSXRange 多单元区域对象,支持批量操作。新增入口:Worksheet.Range['A1:C5']、Worksheet.RCRange[r1,c1,r2,c2]、Worksheet.UsedRange、Worksheet.EntireRow(r)、Worksheet.EntireColumn(c)。返回的 range 对象提供 SetValue / SetFormula / Clear / ClearAll / Merge / Unmerge / Offset / Resize,以及批量样式索引 setter(SetFontIndex / SetFillIndex / SetBorderIndex / SetNumberFormatIndex / SetAlignmentIndex)和 SetNumberFormat(Fmt) 便捷方法——后者会在工作簿数字格式池里查找或新增对应字符串。TXLSXRange 对象由 worksheet 持有,worksheet 销毁时统一释放,调用方无需 Free。
- TXLSXCell 新增 NumberFormat: WideString 便捷属性,与已有 NumberFormatIndex 配对。读取返回工作簿池中的格式字符串;写入时自动在池里查找或追加该字符串并同步更新 NumberFormatIndex。需要 cell 已挂到工作簿上(通过标准的 TXLSXWorkbook.Sheets.Add(...).Cells[r, c] 流程即可)。
- 新增 cell -> sheet -> workbook 反向引用链,每个 TXLSXCell 现在能直接定位到所属工作簿,无需调用方维护额外映射。TXLSXSheets、TXLSXWorksheet、TXLSXCells 都新增了 Owner 字段,通过各自构造函数串接;TXLSXCell 新增只读 Workbook 属性和 internal-flavor SetWorkbook,由 TXLSXCells.GetItem 在 auto-create 时自动注入。
2026-05-16 Version 2.17.42
- 修复 XLSX 单元往返在重新打开时丢失的问题。SaveAs 写出的单元在 Open 后 HasCell(row, col) 返回 False,单元的值、公式、字体索引、填充索引、边框索引、数字格式索引全部丢失。根因是 sheet 解析器在 `<c>` 元素处理中多余调用了 `MoveToAttribute('r')`,把 reader 当前节点类型切到 attribute,导致紧随其后的 IsEmptyElement 检查返回 True 并把 inCell 关掉,凡是带 r="" 属性的 `<c>` 元素(也就是所有单元)一律不再解析子节点。移除这个多余的游标移动后,文本、数字、公式、日期单元的往返一并恢复。
- 修复 XLSX 样式索引在重新打开时无法回填到单元的问题。即便字体/填充/边框/数字格式池本身(Workbook.Fonts/Fills/Borders/NumberFormats)已经正确往返,单元上的 FontIndex/FillIndex/BorderIndex/NumberFormatIndex 仍读回 0。cellXf 解析器原本只在 `</xf>` 终结标签里推进索引计数器,但 Excel 普遍输出 self-closing 的 `<xf .../>`(没有内嵌 `<alignment>` 时),计数器永不递增,所有 cellXf 互相覆盖到索引 0。解析器现在会在 self-closing `<xf/>` 时同步推进计数器,单元级 FontIndex/FillIndex/BorderIndex/NumberFormatIndex 恢复往返。
- 修复 XLSX 日期单元的往返问题。把 TDateTime 写入 TXLSXCell.Value 之前会绕道走 SST 字符串池输出 t="s",原因是 Delphi 的 VarIsNumeric() 对 varDate 返回 False;SaveAs 现在直接把日期序列号写到 `<v>` 并套用日期 cellXf,日期单元重新打开后是 varDate Variant 而不是无法逆向转回 TDateTime 的本地化字符串。
2026-05-16 Version 2.17.41
- 修复重新打开包含嵌入图片或 VBA 工程(.xlsm)的 .xlsx 文件时抛出 "zlib stream does not support seeking" 的错误。图片重载和 VBA 字节重载这两条路径都把 inflate 后的 entry 流送进 TMemoryStream.CopyFrom(Source, 0),该调用会内部把 Source 倒带到 0 以推算字节数,而 Deflate 解压流是前向单读流不允许倒带。两处改用分块 Read-直到-EOF 的辅助过程,使得带图片或宏的 .xlsx 文件能正常完成 SaveAs/Open 的往返。
2026-05-16 Version 2.17.40
- XLSX 引擎新增 ChartSheet(独立图表工作表)支持。TXLSXWorksheet 新增 IsChartSheet 标志位,工作簿级 Workbook.AddChartSheet(Name, ChartType, Title) 便捷方法会创建 sheet、置位标志并预设 Charts[0] 的合理锚点。SaveAs 把 IsChartSheet 的 sheet 输出到 xl/chartsheets/sheetN.xml,配套独立 rels 文件指向共享 drawing 部件,注册 chartsheet content-type,并在 xl/_rels/workbook.xml.rels 中输出 chartsheet 关系类型。普通工作表仍走 xl/worksheets/sheetN.xml 路径。Open 通过关系类型识别 chartsheet,但当前仍按普通 worksheet 加载(图表数据仍通过共享 chart parts 抵达)。
2026-05-16 Version 2.17.39
- XLSX 引擎新增 outline 分组折叠状态(collapsed)的行/列往返支持。TXLSXWorksheet 新增 RowCollapsed[Row] 和 ColCollapsed[Col] 布尔属性以及 SetRowCollapsed / SetColCollapsed / ClearRowCollapsed / ClearColCollapsed 辅助方法。SaveAs 在对应的 <row> 和 <col> 上输出 collapsed="1" 属性;Open 解析回填。配合已有的 outlineLevel 和 hidden 属性,XLSX 引擎现在能完整往返折叠的分组层级。
2026-05-16 Version 2.17.38
- XLSX 引擎新增隐藏行 / 隐藏列往返支持。TXLSXWorksheet 新增 RowHidden[Row] 和 ColHidden[Col] 布尔属性以及 SetRowHidden / SetColHidden / ClearRowHidden / ClearColHidden 辅助方法。SaveAs 在对应的 <row> 和 <col> 上输出 hidden="1" 属性;Open 解析回填到工作表,隐藏的行/列无需依赖自定义列宽或 outline 等级即可往返。
2026-05-16 Version 2.17.37
- XLSX 引擎新增工作表标签颜色往返支持。TXLSXWorksheet 新增 TabColor (ARGB) 和 TabColorIsAuto 属性。SaveAs 在 worksheet 的最前面输出 <sheetPr><tabColor rgb="..."/></sheetPr> 块(仅当 tab 颜色被设置时);Open 解析 <tabColor> 回填到工作表,彩色标签得以往返。未设置颜色的工作簿保持默认状态(TabColorIsAuto = True),不输出额外块。
2026-05-16 Version 2.17.36
- XLSX 引擎新增单元格对齐往返支持。新增 TXLSXHorizontalAlignment 与 TXLSXVerticalAlignment 枚举、TXLSXAlignment 类(Horizontal、Vertical、WrapText、ShrinkToFit、Indent、TextRotation)以及工作簿级 TXLSXAlignments 集合(Workbook.Alignments)。TXLSXCell 新增 AlignmentIndex 属性(1-based 指向 Workbook.Alignments)。SaveAs 为每个工作簿对齐条目输出一个带 <alignment/> 子元素的 cellXf;Open 解析 <alignment> 属性回填 Workbook.Alignments 并把 cellXf 反查为 TXLSXCell.AlignmentIndex。ParseWorksheetXml 与 ParseStylesXml 新增 CellXfAlignMap 参数承接跨阶段映射。
2026-05-16 Version 2.17.35
- XLSX 引擎新增 AES 加密保护(ECMA-376 Standard Encryption)API 入口。TXLSXWorkbook 暴露 SaveAsEncrypted(FileName, Password) / OpenEncrypted(FileName, Password) / CanReadEncrypted(FileName) 三个方法以及独立的 EXlsxEncryptionNotImplemented 异常类。CanReadEncrypted 通过 Microsoft Compound File Binary 魔数($D0 $CF $11 $E0 $A1 $B1 $1A $E1)识别加密档;OpenEncrypted 对未加密的 .xlsx 文件透明地退回到普通 Open。AES-128/256 + SHA + OLE Compound File 算法管线尚未接入——加密文件的实际读写当前抛出 typed exception,等待后续 release 实现算法。异常类型独立,调用方可以 catch 它并降级到 Worksheet.Protect / Workbook.ProtectWorkbook 做可视锁定。
2026-05-16 Version 2.17.34
- 性能优化:把每个工作表 cell rows 的 O(N²) WideString 拼接换成 TXLSWideStringBuilder,大型表(1万 cells 以上)在 SaveAs 时内存和 CPU 都退到线性。新增 WriteWorksheetXmlStreaming 辅助函数和 TXLSXWorkbook.StreamingWrite 开关——开启后 SaveAs 不再同时持有所有 worksheet XML 字符串,每个工作表按序 build + write + 释放。sharedStrings.xml 改为最后写入,确保流式路径下 SST 完整。默认行为不变。
2026-05-16 Version 2.17.33
- XLSX 引擎新增单元格区域操作 API。TXLSXWorksheet 暴露 ClearRange(R1, C1, R2, C2)、本表复制 CopyRange(SrcR1, SrcC1, SrcR2, SrcC2, DstR, DstC)、跨表复制 CopyRangeTo(... TargetSheet, DstR, DstC)、以及剪切 MoveRange(SrcR1, SrcC1, SrcR2, SrcC2, DstR, DstC)。每次操作都会复制单元格的 Value、Formula、四个 style index 和富文本副本;MoveRange 跳过与目标区域的重叠部分,使部分重叠移动仍能保留已粘贴的值。TXLSXCells 同时新增 Remove(Row, Col) 辅助方法。
2026-05-16 Version 2.17.32
- XLSX 引擎新增超链接内部锚点支持。TXLSXHyperlink 新增 Location 属性(如 "Sheet2!A1")和 IsInternal 辅助;TXLSXHyperlinks 暴露 AddInternal 方法,TXLSXWorksheet 新增三个 AddHyperlinkToCell 重载。SaveAs 用 location="" 内联属性输出内部超链接,不为之生成 worksheet rels 关系;Open 识别带 location 的 <hyperlink> 并通过 AddInternal 回填。外部 URL 超链接仍走 rels 文件,逻辑不变。
2026-05-16 Version 2.17.31
- XLSX 引擎新增富文本字符串往返支持。新增 TXLSXRichTextRun 类(每个 run 携带 Name、Size、Bold、Italic、Strikethrough、Underline、Color)和 TXLSXRichText 容器,暴露 AddRun / AddRunText / Clear / PlainText。TXLSXCell 新增 RichText 属性(所有权由 cell 持有);SaveAs 把带富文本的单元格写为多 <r>/<rPr>/<t> 的共享字符串,Open 从 SST 重建 TXLSXRichText,cell.Value 仍保留拼接后的纯文本以兼容不关心格式的调用方。
2026-05-16 Version 2.17.30
- XLSX 引擎新增图表往返支持。新增 TXLSXChartType 枚举(column / bar / line / pie)、TXLSXChartSeries(Name、CategoriesRange、ValuesRange)和 TXLSXChart(ChartType、Title、坐标轴标题、From/To 锚点单元格、Series)类,以及工作表级 TXLSXCharts 集合(Worksheet.Charts)。TXLSXWorksheet 暴露 AddChart(Type, Title, FromRow, FromCol, ToRow, ToCol) 便捷方法。SaveAs 输出 xl/charts/chartN.xml(工作簿全局编号)并通过 xl/drawings/drawingN.xml 中的 twoCellAnchor / graphicFrame 锚定到工作表;Open 解析锚点和图表定义回填到集合。图表标题、坐标轴标题、系列名称和数据源区域全部往返。
2026-05-16 Version 2.17.29
- 修复 SetColWidth、SetRowHeight、SetRowOutlineLevel、SetColOutlineLevel 抛 EListError "Operation not allowed on sorted list" 的 bug。这四个 TStringList 字段创建时 Sorted=True,但写入用 Values[Name] := X 形式,RAD Studio RTL 在 sorted 列表上拒绝该操作。改为创建为未排序列表;查询仍走 IndexOfName,在典型工作表的列/行数量级下性能足够。
2026-05-16 Version 2.17.28
- 修复 TZipArchive.Exists 是 stub 永远返回 false 的 bug。XLSX Open 路径用 zip.Exists(...) 守卫每个部件的读取,导致此前所有声称的往返支持(单元格、样式、批注、绘图、文档属性、命名范围、保护、VBA 等)在读回时静默丢失全部内容。Exists 现在 delegate 到已实现的 Fcd.Entries.Exists 查询,与 OpenFile / CreateFile 调用模式一致。
2026-05-16 Version 2.17.27
- XLSX 引擎新增 VBA 项目保留支持。TXLSXWorkbook 暴露 VbaProject 二进制载荷以及 LoadVbaProjectFromFile(FileName)、ClearVbaProject、HasVbaProject 辅助方法。SaveAs 把字节写入 xl/vbaProject.bin,注册 .bin 内容类型,把工作簿主类型切换为 macro-enabled 变种,并向工作簿 rels 文件加入 vbaProject 关系;Open 把 xl/vbaProject.bin 读回到属性。字节不解析也不修改,已有的 .xlsm 项目原样往返。注意:含宏的工作簿必须以 .xlsm 扩展名保存,Excel 才会启用宏。
2026-05-16 Version 2.17.26
- XLSX 引擎新增工作簿与工作表保护支持。TXLSXWorksheet 暴露 Protect / Protect(Password) / UnProtect 方法以及 IsProtected、SheetProtectHash 属性;TXLSXWorkbook 新增 ProtectWorkbook(可选密码、LockStructure、LockWindows 三参数版本)和 UnProtectWorkbook 方法,以及 IsWorkbookProtected、WorkbookProtectHash、LockStructure、LockWindows 属性。SaveAs 在受保护工作表上输出 <sheetProtection>、在受保护工作簿上输出 <workbookProtection>;Open 解析两个块回填到 API。密码以 4 位十六进制的传统 hash 形式存储以保持往返(不能反推回明文密码)。
2026-05-16 Version 2.17.25
- XLSX 引擎新增文档属性往返支持。TXLSXWorkbook 暴露 Title、Author、Subject、Keywords、Description、Category、LastModifiedBy、Created、Modified、Company、Application、AppVersion 属性。任一属性被设置后,SaveAs 输出 docProps/core.xml 和 docProps/app.xml(并向 [Content_Types].xml 和 _rels/.rels 注册);Open 解析两个文件回填,作者、修改时间戳、应用元数据等存盘再打开后保留。
2026-05-16 Version 2.17.24
- XLSX 引擎新增 Excel 表格往返支持。新增 TXLSXTable 类(Id、Name、DisplayName、Range、Columns、StyleName、ShowFirstColumn / ShowLastColumn / ShowRowStripes / ShowColumnStripes)和工作表级 TXLSXTables 集合。TXLSXWorksheet 暴露 Tables 集合以及 AddTable(Name, Range, ColumnNames) 便捷方法。SaveAs 输出 xl/tables/tableN.xml(工作簿全局编号)、向工作表 rels 写入 table 关系、worksheet 加 <tableParts>、注册 table content-type。Open 解析 table 关系和 tableN.xml 回填到工作表,带样式的 Excel 表格存盘再打开后保留。
2026-05-16 Version 2.17.23
- XLSX 引擎新增自动筛选往返支持。TXLSXWorksheet 暴露 AutoFilterRange 属性以及 SetAutoFilter(Row1, Col1, Row2, Col2) / SetAutoFilter(Range) / ClearAutoFilter 便捷方法。SaveAs 在合并单元格之后输出 <autoFilter ref="..."/>(仅当范围非空);Open 解析 ref 回填到属性,工作表上的筛选条得以存盘再打开后保留。
2026-05-16 Version 2.17.22
- XLSX 引擎新增页面设置往返支持。TXLSXWorksheet 暴露 Margin{Left,Right,Top,Bottom,Header,Footer}、PageLandscape、PaperSize、PageScale、FitToWidth、FitToHeight、HeaderText、FooterText 属性以及 SetPageMargins(L, R, T, B[, H, F]) 便捷重载。SaveAs 在 hyperlinks 和 drawings 之间输出对应的 <pageMargins>、<pageSetup>、<headerFooter> 块;Open 解析回来。未触碰页面设置的工作表保持默认(用 PageSetupTouched 标志控制输出)。
2026-05-16 Version 2.17.21
- XLSX 引擎新增冻结窗格往返支持。TXLSXWorksheet 暴露 FreezePane(Col, Row) / UnfreezePane 方法以及只读的 FreezeCol、FreezeRow 属性。SaveAs 在 <sheetData> 之前输出 <sheetViews>/<pane state="frozen"> 块(含 activePane 和 selection);Open 解析 <pane state="frozen"> 回填到冻结位置,冻结顶行、冻结左列、冻结角点的布局都能存盘再打开后保留。
2026-05-16 Version 2.17.20
- XLSX 引擎新增行列分组(outline 等级)支持。TXLSXWorksheet 暴露 RowOutlineLevel[Row] 和 ColOutlineLevel[Col] 索引属性,以及 SetRowOutlineLevel / HasRowOutlineLevel / ClearRowOutlineLevels 和对应的列方法。SaveAs 在 <row> 和 <col> 上输出 outlineLevel 属性(列侧与已有的 customWidth 合并到同一条 <col>);Open 解析两个属性回填到工作表,行列分组层级得以往返。
2026-05-16 Version 2.17.19
- XLSX 引擎新增条件格式和数据验证往返支持。新增 TXLSXCfOperator 枚举和 TXLSXConditionalFormat 类(Range、Op、Formula1、Formula2)以及工作表级 TXLSXConditionalFormats 集合(Worksheet.ConditionalFormats)。新增 TXLSXDataValidationType、TXLSXDvOperator、TXLSXDataValidation 类(Range、ValidationType、Op、Formula1、Formula2、AllowBlank、ShowInputMessage、ShowErrorMessage)以及 TXLSXDataValidations 集合(Worksheet.DataValidations),提供 AddList(Range, Items) 便捷下拉列表方法。TXLSXWorksheet 暴露 AddConditionalFormat 与 AddDataValidation / AddListValidation 辅助方法。SaveAs 在 sheetData 之后输出 <conditionalFormatting>(cfRule type="cellIs")和 <dataValidations> 块;Open 解析两个块回填到集合。
2026-05-16 Version 2.17.18
- XLSX 引擎新增命名范围往返支持。新增 TXLSXDefinedName 类(Name、Formula、SheetIndex)和工作簿级 TXLSXDefinedNames 集合(Workbook.DefinedNames),提供 Add(Name, Formula[, SheetIndex]) 重载和 IndexOfName 查询。SaveAs 在 xl/workbook.xml 中输出 <definedNames> 块;SheetIndex >= 0 的条目带 localSheetId 属性(工作表作用域),SheetIndex = -1 表示工作簿作用域。Open 解析 <definedName> 元素回填到集合,使存盘再打开后命名范围得以保留。
2026-05-16 Version 2.17.17
- XLSX 引擎新增图片往返支持。新增 TXLSXImageFormat 枚举(png / jpeg / gif / bmp)、TXLSXImage 类(Row/Col 锚点、WidthEMU/HeightEMU、Format、Data)以及工作表级 TXLSXImages 集合。TXLSXWorksheet 暴露 Images 属性和 AddImage(Row, Col, Data, Format) / AddImageFromFile(Row, Col, FileName) 便捷方法。SaveAs 把图片字节写入 xl/media/imageN.<ext>,生成 xl/drawings/drawingN.xml(每张图片一个 oneCellAnchor)并配套 rels 文件,注册内容类型和工作表/绘图关系,并在 worksheet 中加入 <drawing r:id="..."/>。Open 解析 drawingN.xml + 绘图 rels + 媒体二进制,把图片回填到 Worksheet.Images。
2026-05-16 Version 2.17.16
- XLSX 引擎新增自定义数字格式往返支持。新增 TXLSXNumberFormat 类和工作簿级 TXLSXNumberFormats 集合(Workbook.NumberFormats),Add(FormatCode) 会自动去重。TXLSXCell 新增 NumberFormatIndex 属性;SaveAs 在 xl/styles.xml 中输出 <numFmts> 块(自定义 id 从 OOXML 保留基 164 开始),并为每个格式配套生成一个 cellXf;Open 解析自定义 numFmts 后,把 cellXf->numFmtId 映射反查回 NumberFormatIndex。多属性冲突时优先级:FormatIndex > FontIndex > FillIndex > BorderIndex > NumberFormatIndex。
2026-05-16 Version 2.17.15
- XLSX 引擎新增单元格边框往返支持。新增 TXLSXBorderStyle 枚举、TXLSXBorderEdge 类(每条边的 Style + Color + ColorIsAuto)、TXLSXBorder 类(Left / Right / Top / Bottom / Diagonal 五条边及 SetAll(Style[, Color]) 便捷方法),以及工作簿级 TXLSXBorders 集合(Workbook.Borders)和 Borders.AddBox(Style[, Color]) 快捷方法。TXLSXCell 新增 BorderIndex 属性;SaveAs 把每个边框输出到 xl/styles.xml 并配套生成一个 cellXf,Open 解析边框回来后把 cellXf->borderId 映射反查到 BorderIndex。同时设置多个时优先级 FormatIndex > FontIndex > FillIndex > BorderIndex。
2026-05-16 Version 2.17.14
- XLSX 引擎新增单元格填充往返支持。新增 TXLSXFillPattern 枚举和 TXLSXFill 类描述 patternType / fgColor / bgColor;工作簿级 TXLSXFills 集合通过 Workbook.Fills 暴露,并提供 Fills.AddSolid(color) 便捷方法。TXLSXCell 新增 FillIndex 属性;SaveAs 把每个填充输出到 xl/styles.xml 并配套生成一个 cellXf,Open 解析回来后把 cell 的 s 属性反查到 FillIndex。FontIndex 和 FillIndex 同时设置时 FontIndex 优先。
2026-05-16 Version 2.17.13
- 完成 XLSX 字体的 Open 端往返。Open 现在能解析 xl/styles.xml 回填 Workbook.Fonts 集合和 cellXf->fontId 映射;每个单元格的 s 属性会被反查为 TXLSXCell.FontIndex,使存盘再打开后能保留 Name、Size、Bold、Italic、Strikethrough、Underline、Color 等所有字体属性。
2026-05-16 Version 2.17.12
- 新增 TXLSXFont 类和 Workbook.Fonts 集合,让 XLSX 单元格可以选用自定义字体。TXLSXCell 新增 FontIndex 属性;SaveAs 在 xl/styles.xml 中输出 fonts 列表,并为每个字体配套一个 cellXf,cell 的 s 属性按 FontIndex 引用对应 cellXf。Open 端 FontIndex 往返将在下个版本补齐。
2026-05-16 Version 2.17.11
- XLSX 引擎新增行高往返支持。TXLSXWorksheet 暴露 RowHeight[Row] 属性以及 SetRowHeight、HasRowHeight、ClearRowHeights 辅助方法。SaveAs 在每个有自定义高度的 <row> 元素上输出 ht 和 customHeight="1" 属性(包括只有行高但无任何单元格的行);Open 解析 ht 属性回填到行高表。
2026-05-16 Version 2.17.10
- XLSX 引擎新增列宽往返支持。TXLSXWorksheet 暴露 ColWidth[Col] 属性以及 SetColWidth、HasColWidth、ClearColWidths 辅助方法。SaveAs 输出 <cols> 块,每个自定义列宽一条 <col> 条目;Open 回放 <col min/max/width> 条目,未自定义的列保持 Excel 默认宽度。
2026-05-16 Version 2.17.9
- XLSX 引擎新增单元格批注往返支持。TXLSXWorksheet 暴露 Comments 集合和 AddComment(Row, Col, Text[, Author]) 重载。SaveAs 输出 xl/commentsN.xml(自动去重作者列表)以及配套的 xl/drawings/vmlDrawingN.vml 让 Excel 能渲染批注气球;Open 解析 commentsN.xml 写回集合。工作表关系文件、内容类型注册、<legacyDrawing> 引用自动维护。
2026-05-16 Version 2.17.8
- XLSX 引擎新增超链接往返支持。TXLSXWorksheet 暴露 Hyperlinks 集合和 AddHyperlink(Row, Col, Url[, Display[, Tooltip]]) 重载。SaveAs 在每个工作表中输出 <hyperlinks> 块,并配套写出 xl/worksheets/_rels/sheetN.xml.rels 关系文件存放外部 URL;Open 先读取工作表关系文件解析 <hyperlink r:id="..."/> 条目对应的真实 URL 后回填到集合。
2026-05-16 Version 2.17.7
- XLSX 引擎新增合并单元格往返支持。TXLSXWorksheet 暴露 MergedCells 集合和 MergeCells(R1, C1, R2, C2) 便捷方法,与 BIFF façade 调用风格一致。SaveAs 在 sheetData 之后输出 <mergeCells> 块,Open 解析 <mergeCell ref="A1:B2"/> 条目回填到集合中。
2026-05-16 Version 2.17.6
- XLSX 引擎现在能往返日期和公式。TDateTime 单元格值序列化为 Excel 序列号,并打上内置日期 cellXf 标记让 Excel 渲染为日期;Open 时引用日期 cellXf 的单元格自动解码回 TDateTime 变体。TXLSXCell 新增 Formula 属性,SaveAs 把公式作为 <f> 子元素输出,Open 解析 <f> 文本写回单元格。
2026-05-15 Version 2.17.5
- XLSX 引擎新增 styles.xml 骨架支持。SaveAs 现在输出最小合规的 xl/styles.xml(含默认 fonts / fills / borders / cellStyleXfs / cellXfs 条目),并同步注册到 content-types 与 workbook 关系中。单元格新增 FormatIndex 属性,非零时输出 s="N" 单元格属性;Open 读回 s="N" 到 FormatIndex。具体的样式描述对象(fonts / fills / borders / cellXfs 作为工作簿级集合)将在后续 commit 中加入。
2026-05-15 Version 2.17.4
- XLSX 引擎新增共享字符串(SST)支持。SaveAs 构建去重的字符串表并输出 xl/sharedStrings.xml,取代原先内联字符串输出。Open 优先读取 xl/sharedStrings.xml,按 t="s" 单元格引用解析字符串。来自第三方 XLSX 的内联字符串单元格在 Open 时仍然兼容接受。
2026-05-15 Version 2.17.3
- TXLSXWorksheet 的单元格存储从 record 数组改为 TXLSXCell 对象与 TXLSXCells 集合。单元格调用方式改为 Worksheet.Cells.Item[Row, Col].Value,与 BIFF façade 的 IXLSCells / IXLSRange 形态一致。同时提供 Worksheet.Cells.HasCell / Cells.Count / Cells.CellByIndex / Cells.Clear。
2026-05-15 Version 2.17.2
- 在 TXLSXWorkbook 上引入 TXLSXSheets 集合类,对应 BIFF façade 的 IXLSWorkSheets 集合。调用方式从原来的 Workbook.AddSheet / Workbook.SheetCount / Workbook.Sheet[i] 改为 Workbook.Sheets.Add / Workbook.Sheets.Count / Workbook.Sheets[i] / Workbook.Sheets.IndexByName,与 v2 façade 写法一致。
2026-05-15 Version 2.17.1
- 将 TXLSXWorkbook.SaveToFile 重命名为 SaveAs,TXLSXWorkbook.LoadFromFile 重命名为 Open,与现有 IXLSWorkBook 命名风格保持一致。同时新增文件格式参数和密码参数的重载,让 XLSX façade 的调用方式与 BIFF façade 一致。AddSheet 也新增无参版本,自动生成默认工作表名。
2026-05-15 Version 2.17.0
- TXLSXWorkbook.SaveAs 现在能产生最小的 OOXML .xlsx 文件,包含单元格值(数值、布尔、内联字符串)。归档含内容类型、根关系、工作簿及其关系、每个工作表一个 XML 部件。
- TXLSXWorkbook.Open 能读回最小 OOXML .xlsx 归档 —— 从 xl/workbook.xml 获取工作表名,从 xl/worksheets/sheetN.xml 获取单元格值。共享字符串、样式、日期、公式暂未支持。
- 新增 OOXML 命名空间、内容类型、关系类型常量以及引用 / 解析 / 转义辅助函数(XlsxColumnLabel、XlsxCellRef、XlsxColumnIndex、XlsxParseCellRef、XlsxParseRangeRef、XlsxEscapeText、XlsxEscapeAttr),供后续 XLSX 功能使用。
2026-05-15 Version 2.16.4
- XLSX façade 单元 lxHandleX 现在定义自己的工作簿和工作表类型(TXLSXWorkbook、TXLSXWorksheet),与 BIFF façade 完全独立。保存和加载入口已预留,OOXML 接入将在后续版本中完成。
- 新增 XLSX façade 开发者参考主题,说明 lxHandle 与 lxHandleX 如何共存以及它们共用的辅助单元。
2026-05-15 Version 2.16.3
- 新增平行 façade 单元 lxHandleX,用于容纳即将到来的 XLSX 专属工作簿和工作表方法。现有用户使用基础 façade 的代码不需要任何改动。
2026-05-15 Version 2.16.2
- 新增内部 AVL 树、列容器和行容器辅助单元,作为后续工作簿子系统改进的基础数据结构。
2026-05-15 Version 2.16.1
- 新增内部 XML 读写器与 ZIP 归档辅助单元,配套引入缓存流和流支持模块。这些是后续 XLSX 文件格式支持的基础组件。
2026-05-15 Version 2.16.0
- 新增内部单元格样式模块(颜色管理、字体、填充、边框、XF 样式)以及配套的哈希表与对象键列表辅助单元。这些模块是后续 XLSX 输入输出和样式增强的基础组件。
2026-05-15 Version 2.15.1
- 新增内部 RGB/HLS 颜色转换辅助单元,为后续样式和渲染增强提供基础。
- 新增内部高性能字符串构造器(ANSI 与 Wide 两版),为后续 XML 与 Excel 输入输出路径提供基础。
2026-05-14 Version 2.15.0
- 将 HtmlHelp 参考文档重组为适合浏览器直接打开的结构,拆分主题、资源、脚本、样式和源资料目录。
- 新增浏览器友好的帮助首页和目录导航页,并统一页头、主题快捷入口和页脚。