如何改变word修订模型下的视图

在Word中执行与Find、Range等相关的操作时,需对修订模式下的文档进行特殊处理。

核心知识点

Word中的 RevisionsView 属性只有两种设置:显示标记的最终状态(Final Showing Markup) 和 显示标记的原始状态(Original Showing Markup)。
Word本身却支持四种视图,具体包括:最终状态(Final)、显示标记的最终状态(Final Showing Markup)、原始状态(Original)、显示标记的原始状态(Original Showing Markup)。

如何实现4种视图的切换?

视图模式 RevisionsView ShowRevisionsAndComments
Final 0 FALSE
FinalShowingMarkup 0 TRUE
Original 1 FALSE
OriginalShowingMarkup 1 TRUE

实例

 1 // Step 1 保存文档初始视图信息

 2 bool SRACtag = _doc.Application.ActiveDocument.ActiveWindow.View.ShowRevisionsAndComments;

 3 MSWord.WdRevisionsView ViewTag = _doc.Application.ActiveDocument.ActiveWindow.View.RevisionsView;

 4 

 5 // Step 2 判断是否处于 修订模式? 若是,则显示最终状态

 6 if (_doc.Application.ActiveDocument.TrackRevisions == true)

 7 {

 8     _doc.Application.ActiveDocument.ActiveWindow.View.RevisionsView = Microsoft.Office.Interop.Word.WdRevisionsView.wdRevisionsViewFinal;

 9     _doc.Application.ActiveDocument.ActiveWindow.View.ShowRevisionsAndComments = false;

10     _doc.Application.Visible = true;

11 }

12 

13 /*

14  *文档处理代码

15  */

16 

17 // Step 3 判断是否处于 修订模式? 若是,则恢复文档初始设置

18 if (_doc.Application.ActiveDocument.TrackRevisions == true)

19 {

20     _doc.Application.ActiveDocument.ActiveWindow.View.RevisionsView = ViewTag;

21     _doc.Application.ActiveDocument.ActiveWindow.View.ShowRevisionsAndComments = SRACtag;

22     _doc.Application.Visible = true;

23 }

 

WdRevisionsView枚举类型 说明

 1 using System;

 2 

 3 namespace Microsoft.Office.Interop.Word

 4 {

 5     public enum WdRevisionsView

 6     {

 7         wdRevisionsViewFinal = 0,

 8         wdRevisionsViewOriginal = 1,

 9     }

10 }

 

你可能感兴趣的:(word)