一、痕迹保留

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

poCtrl.webOpen("doc/test.doc", OpenModeType.docRevisionOnly, "张三");

二、键盘批注

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

PageOffice中新建批注的两种方式:

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

主要用到的js代码:

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



主要用到的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);
}

三、手写批注

近年来,许多政府部门实施办公自动化系统,随着新需求,新产品的出现,其内涵也在不停地更新与发展,从简单文件,图档数字化,电子信件的广泛采用以及协同工作,进而发展到运用现代网络信息技术,使其内涵得到一次次的更新与扩展。但并不是所有的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);

(手写批注工具栏)

(分层显示手写批注)



转载

https://blog.csdn.net/wqqqianqian/article/details/128421609

PageOffice 在线打开 word 文件实现痕迹保留、键盘批注、手写批注的更多相关文章

  1. [转载]]Java开发如何在线打开Word文件

    此方案使用了PageOffice产品实现在线打开Word文档: 1. 首先从PageOffice官网下载产品开发包,http://www.zhuozhengsoft.com/dowm/ ,下载Page ...

  2. [原创]Java开发如何在线打开Word文件

    此方案使用了PageOffice产品实现在线打开Word文档: 1. 首先从PageOffice官网下载产品开发包,http://www.zhuozhengsoft.com/dowm/ ,下载Page ...

  3. [转载]Java集成PageOffice在线打开编辑word文件 - Spring Boot

    开发环境:JDK1.8.Eclipse.Sping Boot + Thymeleaf框架. 一. 构建Sping Boot + Thymeleaf框架的项目(不再详述): 1. 新建一个maven p ...

  4. [原创]Java集成PageOffice在线打开编辑word文件 - Spring Boot

    开发环境:JDK1.8.Eclipse.Sping Boot + Thymeleaf框架. 一. 构建Sping Boot + Thymeleaf框架的项目(不再详述): 1. 新建一个maven p ...

  5. [原创]Java调用PageOffice在线打开数据库中保存的Word文件

    PageOffice产品和数据库是两个独立的概念,严格来说两者之间没有任何本质关系.PageOffice不依赖数据库而存在,但是数据库和PageOffice可以结合使用来完成某些复杂的业务逻辑.例如: ...

  6. android获取一个用于打开Word文件的intent

    近期在做项目使用webview显示后,有写文档须要打开,找了一些资料,研究了一下,弄出来了! 以下贴一下主要代码: param为文档的主要路径 public static Intent getWord ...

  7. SharePoint 2013 用IE11在线打开Word文档报错

    问题: 测试结果: ie11会报错,ie10和以下版本不会报错,chrom不会报错. jindahao

  8. [转载] Java开发在线编辑Word同时实现全文检索

    一.背景介绍 Word文档与日常办公密不可分,在实际应用中,当某一文档服务器中有很多Word文档,假如有成千上万个文档时,用户查找打开包含某些指定关键字的文档就变得很困难,一般情况下能想到的解决方案是 ...

  9. [原创]Java开发在线编辑Word同时实现全文检索

    一.背景介绍 Word文档与日常办公密不可分,在实际应用中,当某一文档服务器中有很多Word文档,假如有成千上万个文档时,用户查找打开包含某些指定关键字的文档就变得很困难,一般情况下能想到的解决方案是 ...

  10. Java 如何在线打开编辑word文档?

    在一般的OA项目中经常会遇到在线处理Office文档的需求,先下载文件,编辑保存后再选择文件上传的方式太过原始,在如今早已是Office Online的时代,没有用户能接受这种蹩脚的操作方式. 虽然微 ...

随机推荐

  1. #K-D Tree#洛谷 2093 [国家集训队]JZPFAR

    题目 平面上有 \(n\) 个点.现在有 \(m\) 次询问,每次给定一个点 \((px, py)\) 和一个整数 \(k\), 输出 \(n\) 个点中离 \((px, py)\) 的距离第 \(k ...

  2. OpenHarmony如何切换横竖屏?

    前言 在日常开发中,大多APP可能根据实际情况直接将APP的界面方向固定,或竖屏或横屏.但在使用过程中,我们还是会遇到横竖屏切换的功能需求,可能是通过物理重力感应触发,也有可能是用户手动触发.所以本文 ...

  3. 全平台GPU通用AI视频补帧超分教程

    全平台GPU通用AI视频补帧超分教程 本教程只发布于https://www.cnblogs.com/Icys 注意:本教程需要一定的命令行和视频编码知识,请谨慎食用. 软件准备 realcugan-n ...

  4. C#_面试题1

    C#_面试题1 1.维护数据库的完整性.一致性.你喜欢用触发器还是自写业务逻辑?为什么? 答:尽可能用约束(包括CHECK.主键.唯一键.外键.非空字段)实现,这种方式的效率最好:其次用触发器,这种方 ...

  5. 详讲openGauss 5.0 单点企业版如何部署_Centos7_x86

    本文分享自华为云社区<openGauss 5.0 单点企业版部署_Centos7_x86>,本文作者:董小姐 本文档环境:CentOS7.9 x86_64 4G1C40G python2. ...

  6. C语言 02 安装

    C 语言的编译器有很多,其中最常用的是 GCC,这里以安装 GCC 为例. Windows 这里以 Windows 11 为例 官方下载地址:https://www.mingw-w64.org/ 选择 ...

  7. win10上鼠标右键怎么进入cmd

    背景: 在win7上有个很好的功能,在文件夹空白区域,按住 " ctrl + 鼠标右键 " 可以直接打开 cmd 窗口 但是在win10上同样的操作方法,打开的窗口却是 power ...

  8. JavaScript 迈入 AI 新纪元

    随着人工智能技术的不断进步,JavaScript 也迎来了自己的 AI 时代. JS-Torch 是一个全新的深度学习库,专为 JavaScript 设计,其语法习惯与广受欢迎的 PyTorch 框架 ...

  9. DevEco Studio新特性分享-跨语言调试,让调试更便捷高效

     原文:https://mp.weixin.qq.com/s/JKVLQXu1z1zAoF5q49YEGg,点击链接查看更多技术内容.   HUAWEI DevEco Studio是开发Harmony ...

  10. stack-c++

    #include <iostream> using namespace std; template <typename T> class Stack{ private: int ...