修订模式
场景说明
文档修订功能用于追踪文档的修改历史。可以开启/关闭修订跟踪,也可以在不同的修订显示模式之间切换,包括最终状态、批注模式和正文模式(inline模式)。
适用场景:
- 文档修订审阅
- 查看文档修改历史
- 协作编辑追踪
- 文档版本对比
挂载时设置默认模式
JSSDK: 1.10.2、FilezOffice v8.2 FP2 支持
挂载文档时,可以通过 uiConfig 的 WdRevisionViewType 参数设置默认的修订显示模式。
Writer.WdRevisionViewType 枚举值说明:
| 枚举值 | 值 | 说明 |
|---|---|---|
| FinalInlineMark | '1' | 正文模式 |
| FinalNoMark | '3' | 最终模式 |
| FinalBalloonMark | '7' | 批注框模式 |
示例
const Application = await ZOfficeSDK.mount(url, '#doc1', true, {
uiConfig: {
WdRevisionViewType: Writer.WdRevisionViewType.FinalNoMark
}
});
两种模式切换
JSSDK: 1.4.0、FilezOffice V6.1 支持
使用 setShowRevisionsAndComments 方法可以在最终模式和批注模式之间切换。
相关 API 文档
切换到最终模式
async function switchToFinalMode() {
const success = await Application.ActiveDocument.ActiveWindow.setShowRevisionsAndComments(false);
console.log(success);
}
切换到批注模式
async function switchToBalloonMode() {
const success = await Application.ActiveDocument.ActiveWindow.setShowRevisionsAndComments(true);
console.log(success);
}
三种模式切换
JSSDK: 1.10.2、FilezOffice v8.2 FP2 支持
使用 setRevisionsMarkup 配合 setRevisionsMode 方法可以在三种修订显示模式之间切换,支持更精细的控制。
相关 API 文档
- Revisions - 由修订标记所标记的修改的集合
- Revisions.setRevisionsMode - 设置修订标识显示模式
- Revisions.RevisionsMode - 修订标识的显示方式
- Window.setRevisionsMarkup - 设置文档中显示的审阅者标记的范围
- Window.revisionsMarkup - 指定文档中显示的审阅者标记的范围
- Writer.WdRevisionsMarkup - 指定文档中显示的审阅者标记的范围
- Writer.WdRevisionsMode - 指定修订标识的显示方式
切换到正文模式
async function switchToContentModeWithRevisions() {
// 正文模式(inline模式 + 显示标记)
await Application.ActiveDocument.ActiveWindow.setRevisionsMarkup(
Writer.WdRevisionsMarkup.wdRevisionsMarkupAll
);
const Revisions = Application.ActiveDocument.Revisions;
await Revisions.setRevisionsMode(Writer.WdRevisionsMode.wdInLineRevisions);
const markup = await Application.ActiveDocument.ActiveWindow.revisionsMarkup;
console.log(markup, await Revisions.RevisionsMode);
}
切换到批注模式
async function switchToBalloonMode() {
// 批注模式(批注框模式 + 显示标记)
await Application.ActiveDocument.ActiveWindow.setRevisionsMarkup(
Writer.WdRevisionsMarkup.wdRevisionsMarkupAll
);
const Revisions = Application.ActiveDocument.Revisions;
await Revisions.setRevisionsMode(Writer.WdRevisionsMode.wdBalloonRevisions);
const markup = await Application.ActiveDocument.ActiveWindow.revisionsMarkup;
console.log(markup);
}
切换到最终模式
async function switchToFinalMode() {
// 最终模式(不显示标记)
await Application.ActiveDocument.ActiveWindow.setRevisionsMarkup(
Writer.WdRevisionsMarkup.wdRevisionsMarkupNone
);
const markup = await Application.ActiveDocument.ActiveWindow.revisionsMarkup;
console.log(markup);
}
开启/关闭修订模式
通过 enableTrackChange 和 disableTrackChange 方法可以控制是否开启修订跟踪,开启后后续的修改会生成修订记录。
相关 API 文档
开启修订模式
async function enableRevision() {
await Application.ActiveDocument.enableTrackChange();
}
关闭修订模式
async function disableRevision() {
await Application.ActiveDocument.disableTrackChange();
}
注意事项
- 「两种模式切换」(
setShowRevisionsAndComments)仅支持最终模式和批注模式的切换 - 「三种模式切换」(
setRevisionsMarkup+setRevisionsMode)支持更精细的控制 Writer.WdRevisionsMode枚举值说明:Writer.WdRevisionsMode.wdBalloonRevisions(0): 在左边距或右边距的批注中显示修订Writer.WdRevisionsMode.wdInLineRevisions(1): 在正文中显示修订
Writer.WdRevisionsMarkup枚举值说明:Writer.WdRevisionsMarkup.wdRevisionsMarkupNone(0): 不显示标记Writer.WdRevisionsMarkup.wdRevisionsMarkupAll(2): 显示所有标记
- 三种显示模式:
- 最终模式:
revisionsMarkup = wdRevisionsMarkupNone - 批注模式:
revisionsMarkup = wdRevisionsMarkupAll+RevisionsMode = wdBalloonRevisions - 正文模式:
revisionsMarkup = wdRevisionsMarkupAll+RevisionsMode = wdInLineRevisions
- 最终模式: