TSOffice/更新日志.md

715 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 更新日志
## 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.0excel 某些版本打开会显示 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.sox86_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('中文');` 在文件头设置该代码后,系统会自动检测当前的环境字符集