[TOC] > Fri May 14 2021 21:31:30 GMT+0800 (GMT+08:00) WPS 文档的 JSAPI 没有 ThisDocument,可用 ActiveDocument 代替。 文档 JSAPI 主要是样式的处理上。感觉使用宏的地方不是很多,因为那些繁琐的样式调整,通过格式刷、定位来处理可能比宏还要快很多(除非你是在处理很多格式相同的文档,否则宏是没什么意义的——因为写宏花的时间可能比手工处理花的时间还长) 个人感觉在文档上写宏不是很"顺畅",因为一切的逻辑似乎都是建立在 CSS 类的基础上的,没有唯一的ID,这意味着你将不能快速定位内容、段落、标题、引用。有时候我甚至觉得,用WPS文档、Word 编辑内容还不如直接写 HTML 来得舒服……直到现在写 HTML 还不如写 Markdown…… 如果你是大学生或者更高学历的在读人士,那么最好直接学 LaTeX,据说发学术论文必用。扯远了,回归 WPS 文档 JSAPI。 ## 挺惊讶的发现 > 对标 HTML 标签貌似更容易看明白……当然,对标 XML 也有相同的效果。 1. Paragraph 并不是真的指段落,而是指每个<kbd>Enter</kbd>键入的换行符……不是 HTML 中的 `"<p>...</p>"` 哦…… 2. 匹配样式走的是 CSS 类选择器的逻辑,而非标记。 ```html <p class="wdStyleHeading1">标题1</p> ``` 为什么不是 CSS id 选择器呢?因为默认的所有的 Paragraph 的 ID 都是 "default",ID 通常是全局唯一的,这样一来可以说明并没有使用 ID 作为区分属性。 更为简单的做法是直接将当前文档另存为 XML 和 HTML。然后在源码中大概搞清楚为什么 Paragraph 不是我们理解中的那样。