多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## **痕迹保留、键盘批注、手写批注** 一般在OA办公系统及其它文档系统公文流转的过程中,多层上级要对下级撰写的公文进行逐级审批或修改,这时就用到了Office的审阅功能。审阅的过程一般就是对文档进行留痕,键盘批注,手写批注的过程。 ### **一.痕迹保留** Word中的痕迹一般指的是审阅文档的用户对文档所做的修改(插入和删除)操作。在PageOffice的强制留痕模式下,用户对文档所做的任何修改都会以痕迹的形式保留下来,不同用户对文档做的修订会自动用不同的颜色标记; 用户不能接受、拒绝其他用户对此文档所做的任何修订;修订记录能够显示修订者的名字,修订时间及修订内容。 ![1610](https://box.kancloud.cn/0e6873373b5edce76e634449d37953d0_1050x806.png) > 注:word的痕迹的具体使用方式请参考Samples的综合演示 > 三、3、在OA或文档系统里文件流转中的使用效果,并结合“Word文档在OA系统中的在线编辑及流转实现”文档。此外,当文档很大,痕迹很多时,为了方便审阅文档的用户很容易定位到当前痕迹并对该痕迹进行审核,PageOffice还提供了遍历当前文档的所有痕迹,并以列表的形式显示的功能,此功能的详细使用请参考Samples的高级功能 > 二、41、Word中显示痕迹列表效果(RevisionsList),此处不再赘述。 ### **二.键盘批注** 批注是作者或者审阅者根据自己的修改意见,给文档添加的注释或者注解,通过查看批注, 用户可以更加详细地了解文档某些部分的修改意见。用户可以通过office本身的功能新建批注或者通过PageOffice提供的接口给文档新建批注,不了解office本身批注功能的用户可以网上自己搜索一些资料学习研究一下,此处不再赘述。PageOffice也提供了新建批注的功能。 PageOffice中新建批注的两种方式: #### 1.添加自定义按钮触发js方法弹出批注框,然后输入批注内容。 主要用到的js代码: ~~~ document.getElementById("PageOfficeCtrl1").WordInsertComment(); ~~~ ![1612](https://box.kancloud.cn/9de9e4e29d82de4eaf20ca2e44741653_1127x748.png) #### 2.通过文本框输入批注内容,然后移动光标到指定的位置再插入批注。 ![1613](https://box.kancloud.cn/6c51165e73162a02967a919996b80068_1220x787.png) 主要用到的js代码: ~~~ function Button1_onclick() { addComment(document.getElementById("Text1").value); } //用pageoffice调用宏的方式添加键盘批注 function addComment(txt) { var sMac = "Sub myfunc() " + "\r\n" + "Selection.Comments.Add Range:=Selection.Range " + "\r\n" + "Selection.TypeText Text:=\"" + txt + "\" " + "\r\n" + "On Error Resume Next " + "\r\n" + "ActiveWindow.ActivePane.Close " + "\r\n" + "End Sub "; document.getElementById("PageOfficeCtrl1").RunMacro("myfunc", sMac); } ~~~ >注:上述示例中的详细代码及使用方式请参考Samples的演示: >二、40、Word的两种新建批注方式和批注列表效果(专业版、企业版) >此外,当文档有几十页甚至更大时,为了方便审阅文档的用户很容易定位到当前键盘批注并对该批注进行审核,此示例还演示了PageOffice遍历当前文档的所有键盘批注,并以列表的形式显示的功能。 ### **三. 手写批注** 近年来,许多政府部门实施办公自动化系统,随着新需求,新产品的出现,其内涵也在不停地更新与发展,从简单文件,图档数字化,电子信件的广泛采用以及协同工作,进而发展到运用现代网络信息技术,使其内涵得到一次次的更新与扩展。但并不是所有的OA系统都得到了很好的应用,在没有手写签批的OA系统中,无法真正实现无纸化办公,反而形成了半自动化,半手工的流程。为了真正实现办公的自动化,无纸化,PageOfice开发出来了在线对office文档的手写签批功能。采用PageOffice的手写技术,就可以使无纸化办公在更多场合显得简单易用,更符合人们圈阅,签批的习惯,大大方便了喜欢使用纸笔的用户。 在手写的过程中,用户用到的主要功能有:设置手写的笔型,线宽,颜色,缩放,以及撤销最近一次手写,退出手写等。主要用到的js代码如下: ~~~ //开始手写,弹出手写,弹出手写批注框 document.getElementById("PageOfficeCtrl1").HandDraw.Start(); //设置手写批注的线宽。线的宽度,值需为大于0小于10的整数。 document.getElementById("PageOfficeCtrl1").HandDraw.SetPenWidth(5); //设置手写批注的颜色,值一个BGR (Blue, Green, Red)颜色数值。 //BGR value = (blue * 65535) + (green * 255) + red。 document.getElementById("PageOfficeCtrl1").HandDraw.SetPenColor(5292104); //设置手写批注的画笔类型。1,代表钢笔;2,代表荧光笔。 document.getElementById("PageOfficeCtrl1").HandDraw.SetPenType(1); //设置手写批注的缩放率。缩放的范围是1~100之间的整数。 document.getElementById("PageOfficeCtrl1").HandDraw.SetPenZoom(50); //撤销最近一次手写批注。 document.getElementById("PageOfficeCtrl1").HandDraw.Undo(); //退出手写批注状态,关闭手写批注工具条。 document.getElementById("PageOfficeCtrl1").HandDraw.Exit(); //显示“分层手写批注”工具栏,在工具栏上显示所有做过手写批注的批注者的用户名。 //点击指定的用户名,只显示该用户的手写批注,而隐藏其他用户的手写批注。 //也可以显示全部批注,或隐藏全部批注。 document.getElementById("PageOfficeCtrl1").HandDraw.ShowLayerBar(); //设置只显示指定用户的手写批注。 //UserName为要显示或隐藏批注的用户名,该用户名一般为webOpen的第三个参数值, //Visible是boolean类型,true为显示,false为隐藏。 document.getElementById("PageOfficeCtrl1").HandDraw.ShowByUserName(UserName, Visible ); //隐藏所有的手写批注 document.getElementById("PageOfficeCtrl1").HandDraw.ShowByUserName(null,false); ~~~ :-: ![1614](https://box.kancloud.cn/a65f77db20d250fc2b8dd0ce07df861d_1873x869.png) (手写批注工具栏) :-: ![1615](https://box.kancloud.cn/8e4a0df6f641ab88b571e70192eada0e_1848x819.png) (分层显示手写批注) >注:上述示例中的详细代码及使用方式请参考Samples的高级功能 >二、15、手写批注接口演示(企业版)和PageOffice客户端开发帮助。 > 此外,当文档有几十页甚至更大时,为了方便审阅文档的用户很容易定位到当前手写批注并对该批注进行审核,PageOffice还提供了遍历当前文档的所有手写批注,并以列表的形式显示的功能,此功能的详细使用请参考Samples的高级功能: > 二、42、Word显示手写批注列表效果(企业版)。