Skip to main content

修订模式

场景说明

文档修订功能用于追踪文档的修改历史。可以开启/关闭修订跟踪,也可以在不同的修订显示模式之间切换,包括最终状态、批注模式和正文模式(inline模式)。

适用场景:

  • 文档修订审阅
  • 查看文档修改历史
  • 协作编辑追踪
  • 文档版本对比

挂载时设置默认模式

JSSDK: 1.10.2、FilezOffice v8.2 FP2 支持

挂载文档时,可以通过 uiConfigWdRevisionViewType 参数设置默认的修订显示模式。

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 文档

切换到正文模式

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);
}

开启/关闭修订模式

通过 enableTrackChangedisableTrackChange 方法可以控制是否开启修订跟踪,开启后后续的修改会生成修订记录。

相关 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