794 lines
14 KiB
Markdown
794 lines
14 KiB
Markdown
# 更新日志
|
||
|
||
## 2025-10-30
|
||
|
||
### V1.8.3
|
||
|
||
#### word
|
||
|
||
1. `setData`移除`fieldNames`依赖
|
||
|
||
#### excel
|
||
|
||
1. `InsertTable/GetTable`移除`fieldNames` 依赖
|
||
|
||
## 2025-10-29
|
||
|
||
### V1.8.2
|
||
|
||
#### word
|
||
|
||
1. 升级段落判空`Empty`
|
||
2. 修复`FileName`总是返回 gbk
|
||
|
||
#### excel
|
||
|
||
1. 修复`CopySheet`依赖的`ReplaceStrByReg`公共方法问题,不再依赖该方法
|
||
2. 修复`FileName`总是返回 gbk
|
||
|
||
## 2025-7-22
|
||
|
||
### V1.8.1
|
||
|
||
#### word
|
||
|
||
1. **feat**: 支持同一段落多图片文字
|
||
|
||
```cpp
|
||
picture := TOfficeObj('TPicture');
|
||
picture.Descr := '插入图像案例';
|
||
picture.Image := TOfficeTemplate('tinysoft.gif',true);
|
||
|
||
docx := new TSDocxFile();
|
||
docx.NewFile();
|
||
p := new TOfficeObj('TParagraph');
|
||
r := p.AddRun();
|
||
r.SetText("abc");
|
||
r := p.AddRun();
|
||
r.SetDrawing(picture, docx); // 需要一个图片对象和TSDocxFile对象
|
||
r := p.AddRun();
|
||
r.SetText("def");
|
||
docx.AddParagraph(p, -1);
|
||
```
|
||
|
||
## 2025-6-23
|
||
|
||
### V1.8.0
|
||
|
||
#### word
|
||
|
||
1. **feat**: 支持添加自定目录`TSDocxFile.AddCustomTableContent`
|
||
2. **fix**: 修复单元格内容换行,自定义属性失效问题
|
||
|
||
## 2025-2-28
|
||
|
||
### V1.7.9
|
||
|
||
#### word
|
||
|
||
1. **feat**:支持目录自定义宽度`TOfficeApi().Get("TTableContent-tab-position")`
|
||
2. **fix**:插入图片 id 计算错误,导致`office 2016 16.0.4266`版本不兼容
|
||
|
||
## 2025-1-22
|
||
|
||
### V1.7.8
|
||
|
||
❗ 解决`TSDocxFile`和`TSXlsxFile`内存泄露
|
||
|
||
#### word
|
||
|
||
1. **fix**:`CreateTable`由于`fieldnames.tsf`差异报错
|
||
|
||
## 2025-1-17
|
||
|
||
### V1.7.7
|
||
|
||
#### word
|
||
|
||
1. **feat**:`TPicture`对象设置画布大小`CanvasWidth`、`CanvasHeight`
|
||
2. **fix**:`InsertTable`表格数据不对齐报错
|
||
|
||
#### excel
|
||
|
||
1. **fix**:`SetColOutlineLevel`错误
|
||
|
||
## 2025-1-8
|
||
|
||
### V1.7.6
|
||
|
||
#### excel
|
||
|
||
1. **fix**:`SetRowHeight`单元格不存在无法设置
|
||
2. **fix**:`Set[Get]ColVisible`修改传入的列参数
|
||
|
||
## 2025-1-7
|
||
|
||
### V1.7.5
|
||
|
||
#### word
|
||
|
||
1. 支持获取`sdt`标签类型的内容(如文本框),通过`TSDocxFile.Sdts()`获取文档的的所有`sdt`
|
||
|
||
> ```pascal
|
||
> sdts := docx.Sdts();
|
||
> paragraphs := sdts[0].Paragraphs();
|
||
> textbox := paragraphs[1].TextBoxs();
|
||
> ```
|
||
|
||
## 2024-12-23
|
||
|
||
### V1.7.4
|
||
|
||
#### word
|
||
|
||
1. `insertfile`时候默认添加`w16du`命名空间
|
||
|
||
## 2024-12-05
|
||
|
||
### V1.7.3
|
||
|
||
#### word
|
||
|
||
1. `insertfile`支持 ole 对象的插入,如 wmf 公式,excel 表格
|
||
|
||
## 2024-12-04
|
||
|
||
### V1.7.2
|
||
|
||
#### word
|
||
|
||
1. 支持单元格标题生成到目录,需要额外设置`TOfficeApi().SetCellTableContent(true);`,默认是`false`
|
||
|
||
## 2024-11-19
|
||
|
||
### V1.7.1
|
||
|
||
#### word
|
||
|
||
1. 对生成目录的 xml 结构进行更改
|
||
2. 修复引用 excel 错误
|
||
|
||
#### excel
|
||
|
||
1. 修复获取`comment`时候,换行符问题
|
||
|
||
## 2024-7-8
|
||
|
||
### V1.7.0
|
||
|
||
#### excel
|
||
|
||
1. 修复`CopySheet`操作后,文件报错问题
|
||
|
||
## 2024-5-6
|
||
|
||
### V1.6.9
|
||
|
||
#### excel
|
||
|
||
1. 修复单元格继承列样式失败问题
|
||
|
||
## 2024-4-12
|
||
|
||
### V1.6.8
|
||
|
||
### excel
|
||
|
||
1. 修复`SetCellValue`单元格对列样式的识别,不需要手动用格式刷对所有单元格刷新样式
|
||
|
||
## 2024-3-21
|
||
|
||
### V1.6.7
|
||
|
||
#### word
|
||
|
||
1. 新增对象的`Delete`方法,可以通过`Delete(name)`删除对象的指定属性
|
||
2. 新增`TPageNumType`对象
|
||
3. 扩展`TDocSection`方法,`AppendReference`和`AddReference`,前者是对已有的`Section`对象添加`TReference`对象,而后者是对新的`Section`对象添加
|
||
|
||
## 2024-3-14
|
||
|
||
### V1.6.6
|
||
|
||
#### word
|
||
|
||
1. 修复`TDocSection`节点获取错误
|
||
2. 支持分栏自定义宽度
|
||
|
||
## 2024-3-4
|
||
|
||
### V1.6.5
|
||
|
||
支持扩展扩展模块
|
||
|
||
### excel
|
||
|
||
1. 样式获取报错问题
|
||
|
||
### V1.6.4
|
||
|
||
#### word
|
||
|
||
1. 修复`InsertTable`内容`\n`无换行问题
|
||
2. `TextBox`支持`Clear`清空内容
|
||
|
||
#### word
|
||
|
||
1. 修复目录生成陷入死循环问题
|
||
|
||
## 2024-2-23
|
||
|
||
### V1.6.3
|
||
|
||
#### word
|
||
|
||
1. 修复目录生成陷入死循环问题
|
||
|
||
## 2024-2-7
|
||
|
||
### V1.6.2
|
||
|
||
#### word
|
||
|
||
1. 修复设置段落属性`TextAlignment`失败问题
|
||
|
||
## 2024-2-5
|
||
|
||
### V1.6.1
|
||
|
||
#### excel
|
||
|
||
1. 修复 excel 文件单元格原有类型与 tsl 类型转换报错问题(trystrtofloat)
|
||
|
||
## 2024-2-5
|
||
|
||
### V1.6.0
|
||
|
||
#### excel
|
||
|
||
1. 兼容 Excel2016,通过`NewSheet/InsertSheet`创建工作表不再提示修复错误
|
||
2. 修复带有表头的二维数组通过`InsertTable`写入数据只写入表头未写入数据问题
|
||
|
||
## 2024-1-31
|
||
|
||
### V1.5.9
|
||
|
||
修复`tsl`脚本格式为`utf8`时无法打开中文命名的文件
|
||
|
||
### V1.5.8
|
||
|
||
#### excel
|
||
|
||
1. 支持写入单元格内容时判断当前单元格的数据类型,并以单元格数据类型为准
|
||
|
||
## 2024-1-17
|
||
|
||
### V1.5.7
|
||
|
||
#### excel
|
||
|
||
1. 修复单元格写入浮点数数据 bug,如写入 0.0,excel 某些版本打开会显示 0.00000000000000000
|
||
|
||
## 2024-1-11
|
||
|
||
### V1.5.6
|
||
|
||
#### excel
|
||
|
||
1. 修复单元格写入浮点数数据,精度丢失问题
|
||
|
||
## 2023-12-29
|
||
|
||
### V1.5.5
|
||
|
||
#### word
|
||
|
||
1. 修复生成的目录打开后重新生成页码可能产生页码失败问题
|
||
|
||
#### excel
|
||
|
||
1. 修复`InsertTable`与``SetCellValue`返回值问题
|
||
|
||
## 2023-12-18
|
||
|
||
### V1.5.4
|
||
|
||
#### excel
|
||
|
||
1. 优化`InsertTable`的写入效率
|
||
|
||
## 2023-12-11
|
||
|
||
### V1.5.3
|
||
|
||
#### excel
|
||
|
||
1. 支持写入单元格时且单元格不存在时,新的单元格会沿用设置的样式 ID(若有设置)
|
||
|
||
## 2023-12-1
|
||
|
||
### V1.5.2
|
||
|
||
#### excel
|
||
|
||
1. 修复公式中文转码问题
|
||
|
||
## 2023-11-15
|
||
|
||
### V1.5.1
|
||
|
||
1. 支持识别图片中含有`0xffc2`段的 jpg 格式的大小
|
||
|
||
## 2023-11-14
|
||
|
||
### V1.5.0
|
||
|
||
#### word
|
||
|
||
1. 新增对脚注的支持,方法`TSDocxFile.FootnotesObject().Add`
|
||
2. `TSDocxFile.InsertFile`支持脚注插入
|
||
|
||
### excel
|
||
|
||
1. 升级`TSXlsxFile.CopySheet`
|
||
|
||
## 2023-10-16
|
||
|
||
### V1.4.9
|
||
|
||
#### word
|
||
|
||
1. 新增`TSDocxFile.InsertFile`重载方法
|
||
2. 新增`Table.SetStyle`方法
|
||
|
||
## 2023-9-27
|
||
|
||
### V1.4.8
|
||
|
||
#### word
|
||
|
||
1. 支持`Inserttable`时候加入对单元格样式的设置
|
||
2. 新增`TSDocxFile.LastParagraph`方法
|
||
3. 新增`TParagraph.PrevParagraph`方法
|
||
4. 性能优化
|
||
|
||
## 2023-9-22
|
||
|
||
### V1.4.7
|
||
|
||
#### word
|
||
|
||
1. 修复项目符号属于样式时,生成目录无法识别出项目符号问题
|
||
|
||
## 2023-9-19
|
||
|
||
### V1.4.6
|
||
|
||
#### word
|
||
|
||
1. 修复表格存在合并单元格,生成目录报错问题
|
||
2. 修复单元格添加 run 对象,设置样式不生效问题
|
||
3. 修复插入 word 后,中文样式重复问题
|
||
|
||
### excel
|
||
|
||
🔔 重要升级:`TSExcelFile`更名为`TSXlsxFile`,建议更改,旧名字现阶段仍可使用
|
||
|
||
1. 整理`NewSheet`和`SetSheetVisible`代码
|
||
|
||
#### excel
|
||
|
||
1. 修复`NewSheet`excel 打开遇到提示错误问题
|
||
|
||
## 2023-8-30
|
||
|
||
### V1.4.5
|
||
|
||
#### word
|
||
|
||
1. 支持生成目录后返回目录对象的所有段落内容`目录对象.Paragraphs()`
|
||
|
||
#### excel
|
||
|
||
1. 修复`NewSheet`excel 打开遇到提示错误问题
|
||
|
||
## 2023-8-28
|
||
|
||
### V1.4.4
|
||
|
||
#### word
|
||
|
||
1. 修复`insertFile`样式错误问题
|
||
2. 修复`insertFile`后删除段落再新增段落位置错误问题
|
||
3. 修复生成目录中文编码未转换导致 word 打开失败问题
|
||
|
||
## 2023-8-22
|
||
|
||
### V1.4.3
|
||
|
||
#### word
|
||
|
||
支持段落判空`TParagraph.Empty()`
|
||
|
||
## 2023-8-18
|
||
|
||
### V1.4.2
|
||
|
||
#### word
|
||
|
||
支持插入另一个 word 内容`InsertFile(alias, fileName, posOpt)`
|
||
|
||
## 2023-8-11
|
||
|
||
### V1.4.1
|
||
|
||
#### word
|
||
|
||
修复插入表格后,设置样式 ID 无法全部生效问题
|
||
|
||
## 2023-8-10
|
||
|
||
### V1.4.0
|
||
|
||
#### word
|
||
|
||
支持三级以内目录设置字体,一级目录样式 ID 为`TOC1`,二级目录样式 ID 为`TOC2`,三级为`TOC3`,通过样式设置相关属性即可修改目录字体
|
||
|
||
## 2023-8-7
|
||
|
||
### V1.3.9
|
||
|
||
#### word
|
||
|
||
支持`AddHeading`时传入样式 Id
|
||
|
||
## 2023-8-2
|
||
|
||
### V1.3.8
|
||
|
||
#### word
|
||
|
||
修复插入图片后,设置对齐失效问题
|
||
|
||
## 2023-7-26
|
||
|
||
### V1.3.7
|
||
|
||
#### word
|
||
|
||
新增表格获取高度和宽度方法`table.Height(row) table.Width(col)`
|
||
|
||
## 2023-7-19
|
||
|
||
### V1.3.6
|
||
|
||
#### word
|
||
|
||
新增对表格的行高设置`table.RowHeight(row, height)`
|
||
|
||
## 2023-7-14
|
||
|
||
### V1.3.5
|
||
|
||
#### word
|
||
|
||
段落字体大小设置调整,对齐 VBA 设置
|
||
|
||
## 2023-7-11
|
||
|
||
### V1.3.4
|
||
|
||
修复加密 Bug
|
||
|
||
## 2023-7-4
|
||
|
||
### V1.3.3
|
||
|
||
word/excel 新增加密方法`SetPassword`,升级`OpenFile(alias, fileName, Password)`
|
||
|
||
## 2023-6-26
|
||
|
||
### V1.3.2
|
||
|
||
修复.net 使用 rdo2 执行失败问题,使用 rdo2 时候,需调用`TOfficeInit()`初始化
|
||
|
||
#### word
|
||
|
||
1. 修复 word 模板`template.docx`执行失败问题
|
||
|
||
## 2023-6-20
|
||
|
||
更新部署方式,不再依赖`fmt_pubkrnl_plugin.dll`,详情见[README](./README.md)
|
||
|
||
## 2023-4-26
|
||
|
||
### V1.3.1
|
||
|
||
`office_plugin.dll`与`liboffice_plugin.so(x86_64)`动态库更新
|
||
|
||
## 2023-4-18
|
||
|
||
### V1.3.0
|
||
|
||
支持常用图片的高宽自动识别,支持图片格式有`gif, png, jpeg/jpeg, bmp`
|
||
|
||
#### excel
|
||
|
||
1. 支持 excel 程序设置字体样式粗体,斜体等此类问题的返回类型,如`style.Font.Bold`返回`true 或 false`
|
||
|
||
## 2023-4-4
|
||
|
||
### V1.2.9
|
||
|
||
#### excel
|
||
|
||
1. 修复超链接兼容性
|
||
|
||
## 2023-3-31
|
||
|
||
### V1.2.8
|
||
|
||
#### excel
|
||
|
||
1. 修复由.net 客户端导出的 excel 兼容性问题,`SetColWidth`、`Set/GetDefaultSheet`、`SetSheetHeaderFooter`
|
||
|
||
## 2023-3-23
|
||
|
||
### V1.2.7
|
||
|
||
#### excel
|
||
|
||
1. `GetSheetDefaultColWidth`默认返回值改为`nil`
|
||
|
||
## 2023-3-22
|
||
|
||
### V1.2.6
|
||
|
||
#### excel
|
||
|
||
1. 修复`SetCellValue`值为`nil`未生效问题
|
||
|
||
## 2023-3-20
|
||
|
||
### V1.2.5
|
||
|
||
#### excel
|
||
|
||
1. 修复数字样式获取再赋值再获取失效问题
|
||
2. 支持单元格填入`nil`
|
||
3. `GetComment`获取不到批注时返回内容改为`array(nil,nil)`
|
||
4. 修复`Set/GetColWitdh`传入变量时会被修改问题
|
||
|
||
## 2023-3-16
|
||
|
||
### V1.2.4
|
||
|
||
#### excel
|
||
|
||
1. 修复样式获取数字样式失败问题
|
||
2. 修复边框样式对角线未生效问题
|
||
3. 修复获取属性未正确返回属性值问题
|
||
|
||
## 2023-3-9
|
||
|
||
### V1.2.3
|
||
|
||
#### excel
|
||
|
||
1. `GetComment`获取不到批注时返回内容改为`array(nil,nil)`
|
||
2. 新增`RemoveComment`
|
||
3. 新增`NewStyle-overload`
|
||
4. 修复`ClearCell`引起文件报错
|
||
|
||
## 2023-3-6
|
||
|
||
### V1.2.2
|
||
|
||
#### excel
|
||
|
||
1. 修复`InsertRow`之后原有单元格合并错误问题
|
||
2. 新增`GetCellValueType`
|
||
3. 新增`GetComment`
|
||
4. 新增`GetStyle`,获取的样式修改可通过`TStyle::Apply()`方法重新写入样式
|
||
5. 新增`SetRowOutlineLevel`、`GetRowOutlineLevel`
|
||
6. 新增`SetColOutlineLevel`、`GetColOutlineLevel`
|
||
|
||
## 2023-2-24
|
||
|
||
### V1.2.1
|
||
|
||
#### excel
|
||
|
||
1. Get 相关方法重新 Set 后不再覆盖原有设置,影响方法如下`Set(Get)PageMargins`,`Set(Get)CellHyperLink`,`Set(Get)PageLayout`,`Set(Get)CalcOptions`,`Set(Get)DefaultFont`,`Set(Get)SheetViewOptions`
|
||
|
||
## 2023-2-23
|
||
|
||
### V1.2.0
|
||
|
||
#### excel
|
||
|
||
1. 修复`GetCaclOptions`名称错误,更改为`GetCaclOptions`
|
||
|
||
## 2023-2-22
|
||
|
||
### V1.1.9
|
||
|
||
#### excel
|
||
|
||
1. 新增`InsertSheet`
|
||
|
||
### V1.1.8
|
||
|
||
#### excel
|
||
|
||
1. 新增`GetCalcOptios`
|
||
|
||
## 2023-2-21
|
||
|
||
### V1.1.7
|
||
|
||
#### word
|
||
|
||
1. 新增`LoadFromMem`, `SavaToMem`
|
||
|
||
#### excel
|
||
|
||
1. 新增`LoadFromMem`, `SavaToMem`
|
||
2. 新增重载方法`NewSheet`
|
||
3. 新增`SetCalcOptions`
|
||
4. 修复删除 sheet 报错问题
|
||
|
||
## 2023-2-13
|
||
|
||
### V1.1.6
|
||
|
||
重大更新:移除了`template`文件夹
|
||
|
||
## 2023-2-3
|
||
|
||
### V1.1.5
|
||
|
||
#### excel
|
||
|
||
1. 修复`HSLToRGB`
|
||
2. 修复`CoordinatesToCellName`
|
||
|
||
## 2023-2-2
|
||
|
||
### V1.1.4
|
||
|
||
#### word
|
||
|
||
1. 修复文本框插入图片兼容性问题
|
||
2. 修复项目符号问题
|
||
|
||
#### excel
|
||
|
||
1. 新增`GetDefaultFont`
|
||
|
||
## 2023-2-1
|
||
|
||
### V1.1.3
|
||
|
||
#### word
|
||
|
||
1. 修复获取段落样式 ID 失败问题
|
||
2. 修复文本框添加图片失败问题
|
||
|
||
#### excel
|
||
|
||
1. 新增`SetDefaultFont`
|
||
|
||
## 2023-1-31
|
||
|
||
### V1.1.2
|
||
|
||
#### word
|
||
|
||
1. 完善帮助文档
|
||
|
||
#### excel
|
||
|
||
1. 新增`SetPane`
|
||
2. 新增`NewSheetView`
|
||
3. 单元格样式新增属性“文本方向”: `TAlignment::TextRotation`
|
||
|
||
## 2023-1-18
|
||
|
||
### V1.1.1
|
||
|
||
#### word
|
||
|
||
1. 兼容文本框`TextBox`
|
||
2. 修正`TParagraph::TabStops`
|
||
3. 修复获取图标列表失败问题
|
||
4. 修复`TDocxStyles::Default`
|
||
|
||
#### excel
|
||
|
||
1. 新增`ProtectSheet`和`UnProtectSheet`
|
||
2. 修复`SetSheetViewOptions`和`GetSheetViewOptions`
|
||
|
||
## 2023-1-16
|
||
|
||
### V1.1.0
|
||
|
||
#### word
|
||
|
||
1. 修复页眉页脚显示问题
|
||
2. 修复表格插入列宽失败问题
|
||
3. 优化`InsertTable`性能
|
||
|
||
#### excel
|
||
|
||
1. 新增`CopySheet`
|
||
|
||
## 2023-1-12
|
||
|
||
### V1.0.9
|
||
|
||
#### word
|
||
|
||
1. 新增 ExecInnerTSl
|
||
2. 新增修改 chart 图(数据)
|
||
3. 修复`TNumbering::AddStyleByInnerXml`错误
|
||
4. 完善帮助文档
|
||
|
||
## 2023-1-11
|
||
|
||
### V1.0.8
|
||
|
||
#### word
|
||
|
||
1. 修复`copyFormat`和`AddTableContent`
|
||
|
||
## 2023-1-10
|
||
|
||
### V1.0.7
|
||
|
||
#### word
|
||
|
||
1. 修复 chart 图兼容性问题
|
||
|
||
### V1.0.6
|
||
|
||
中文自动转换 API 由`class(xlsxXml).CodePage('中文');`调整为`TOfficeApi().CodePage('中文');`
|
||
|
||
## 2023-1-5
|
||
|
||
### V1.0.5
|
||
|
||
❗ 部署方式发生变化,简化了环境部署,详见项目[README](./README.md)
|
||
|
||
#### word
|
||
|
||
1. 修复 Properties 执行报错
|
||
2. 修复格式刷
|
||
|
||
#### excel
|
||
|
||
1. 移除 API `JoinCellName`
|
||
2. 修改`RGBToHSL`与`HSLToRGB`返回值
|
||
3. 修复获取超链接`GetCellHyperLink`失败问题
|
||
4. 修复一个对象新建文件,打开文件之后引发的 xlsx 文件错误问题
|
||
5. 修复`GetCoreProps`,`GetAppProps`失败问题
|
||
|
||
## 2022-12-30
|
||
|
||
### V1.0.4
|
||
|
||
#### word
|
||
|
||
1. 初步支持中文
|
||
|
||
#### excel
|
||
|
||
1. 初步支持中文
|
||
2. `SetSheetName`,`NewSheet` 返回值不再是`[err, errinfo]`
|
||
3. 修复清除单元格`ClearCell`不正确问题
|
||
4. 修复`SetCellFormula`,`GetCellFormula`问题
|
||
5. 修复`SetRowVisible`,`GetRowVisible`,`SetSheetVisible`问题
|
||
|
||
如何设置字符集(中文支持)?
|
||
★ 用户的脚本可能是 UFT8 格式,或可能是 GBK 码格式,系统提供 API 自动设置当前字符集环境:`class(xlsxXml).CodePage('中文');` 在文件头设置该代码后,系统会自动检测当前的环境字符集
|