PageOffice常用功能之--痕迹保留、键盘批注、手写批注

2023-10-25 13:11

本文主要是介绍PageOffice常用功能之--痕迹保留、键盘批注、手写批注,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

一般在OA办公系统及其它文档系统公文流转的过程中,多层上级要对下级撰写的公文进行逐级审批或修改,这时就用到了Office的审阅功能。审阅的过程一般就是对文档进行留痕,键盘批注,手写批注的过程。

一.痕迹保留

Word中的痕迹一般指的是审阅文档的用户对文档所做的修改(插入和删除)操作。在PageOffice的强制留痕模式下,用户对文档所做的任何修改都会以痕迹的形式保留下来,不同用户对文档做的修订会自动用不同的颜色标记; 用户不能接受、拒绝其他用户对此文档所做的任何修订;修订记录能够显示修订者的名字,修订时间及修订内容。
1610

注:word的痕迹的具体使用方式请参考Samples的综合演示
三、3、在OA或文档系统里文件流转中的使用效果,并结合“Word文档在OA系统中的在线编辑及流转实现”文档。此外,当文档很大,痕迹很多时,为了方便审阅文档的用户很容易定位到当前痕迹并对该痕迹进行审核,PageOffice还提供了遍历当前文档的所有痕迹,并以列表的形式显示的功能,此功能的详细使用请参考Samples的高级功能
二、41、Word中显示痕迹列表效果(RevisionsList),此处不再赘述。

二.键盘批注

批注是作者或者审阅者根据自己的修改意见,给文档添加的注释或者注解,通过查看批注, 用户可以更加详细地了解文档某些部分的修改意见。用户可以通过office本身的功能新建批注或者通过PageOffice提供的接口给文档新建批注,不了解office本身批注功能的用户可以网上自己搜索一些资料学习研究一下,此处不再赘述。PageOffice也提供了新建批注的功能。
PageOffice中新建批注的两种方式:

1.添加自定义按钮触发js方法弹出批注框,然后输入批注内容。

主要用到的js代码:

document.getElementById("PageOfficeCtrl1").WordInsertComment();

1612

2.通过文本框输入批注内容,然后移动光标到指定的位置再插入批注。

1613
主要用到的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
(手写批注工具栏)

1615
(分层显示手写批注)

注:上述示例中的详细代码及使用方式请参考Samples的高级功能
二、15、手写批注接口演示(企业版)和PageOffice客户端开发帮助。
此外,当文档有几十页甚至更大时,为了方便审阅文档的用户很容易定位到当前手写批注并对该批注进行审核,PageOffice还提供了遍历当前文档的所有手写批注,并以列表的形式显示的功能,此功能的详细使用请参考Samples的高级功能:
二、42、Word显示手写批注列表效果(企业版)。

转载于:https://my.oschina.net/u/3850288/blog/2046275

这篇关于PageOffice常用功能之--痕迹保留、键盘批注、手写批注的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/282785

相关文章

C#中读取XML文件的四种常用方法

《C#中读取XML文件的四种常用方法》Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具,下面我们就来看看C#中读取XML文件的方法都有哪些吧... 目录XML简介格式C#读取XML文件方法使用XmlDocument使用XmlTextReader/XmlTextWr

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

SpringBoot整合DeepSeek实现AI对话功能

《SpringBoot整合DeepSeek实现AI对话功能》本文介绍了如何在SpringBoot项目中整合DeepSeekAPI和本地私有化部署DeepSeekR1模型,通过SpringAI框架简化了... 目录Spring AI版本依赖整合DeepSeek API key整合本地化部署的DeepSeek

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开

Python中操作Redis的常用方法小结

《Python中操作Redis的常用方法小结》这篇文章主要为大家详细介绍了Python中操作Redis的常用方法,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解一下... 目录安装Redis开启、关闭Redisredis数据结构redis-cli操作安装redis-py数据库连接和释放增

css实现图片旋转功能

《css实现图片旋转功能》:本文主要介绍了四种CSS变换效果:图片旋转90度、水平翻转、垂直翻转,并附带了相应的代码示例,详细内容请阅读本文,希望能对你有所帮助... 一 css实现图片旋转90度.icon{ -moz-transform:rotate(-90deg); -webkit-transfo

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

Java中使用Java Mail实现邮件服务功能示例

《Java中使用JavaMail实现邮件服务功能示例》:本文主要介绍Java中使用JavaMail实现邮件服务功能的相关资料,文章还提供了一个发送邮件的示例代码,包括创建参数类、邮件类和执行结... 目录前言一、历史背景二编程、pom依赖三、API说明(一)Session (会话)(二)Message编程客

Java CompletableFuture如何实现超时功能

《JavaCompletableFuture如何实现超时功能》:本文主要介绍实现超时功能的基本思路以及CompletableFuture(之后简称CF)是如何通过代码实现超时功能的,需要的... 目录基本思路CompletableFuture 的实现1. 基本实现流程2. 静态条件分析3. 内存泄露 bug

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过