首页 > 其他分享 >PageOffice 在线打开 word 文件实现痕迹保留、键盘批注、手写批注

PageOffice 在线打开 word 文件实现痕迹保留、键盘批注、手写批注

时间:2023-05-31 16:12:21浏览次数:54  
标签:PageOfficeCtrl1 批注 word PageOffice getElementById 手写 document HandDraw

一、痕迹保留

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

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

image

二、键盘批注

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

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

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

主要用到的js代码:
image

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

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

(手写批注工具栏)

image

(分层显示手写批注)

image
转载
https://blog.csdn.net/wqqqianqian/article/details/128421609

标签:PageOfficeCtrl1,批注,word,PageOffice,getElementById,手写,document,HandDraw
From: https://www.cnblogs.com/qq742655/p/17446440.html

相关文章

  • 神经网络中embedding层作用——本质就是word2vec,数据降维,同时可以很方便计算同义词(各
    Embeddingtflearn.layers.embedding_ops.embedding(incoming,input_dim,output_dim,validate_indices=False,weights_init='truncated_normal',trainable=True,restore=True,reuse=False,scope=None,name='Embedding')Embeddinglayerforase......
  • 如何将word图片粘贴到PHPCMS里面
    ​ 1.编辑器修改(可选)1.1在 ueditor/config.json 中添加代码块    /* 上传word配置 */    "wordActionName":"wordupload",/* 执行上传视频的action名称 */    "wordFieldName":"upfile",/* 提交的视频表单名称 */    "wordPathFormat":"/p......
  • leetcode 557. Reverse Words in a String III
    Givenastring,youneedtoreversetheorderofcharactersineachwordwithinasentencewhilestillpreservingwhitespaceandinitialwordorder.Example1:Input:"Let'stakeLeetCodecontest"Output:"s'teLekatedoCteeLtsetno......
  • leetcode Most Common Word——就是在考察自己实现split
    819.MostCommonWordGivenaparagraph andalistofbannedwords,returnthemostfrequentwordthatisnotinthelistofbannedwords. Itisguaranteedthereisatleastonewordthatisn'tbanned,andthattheanswerisunique.Wordsinthelist......
  • 如何将word公式粘贴到FCKEditor里面
    ​ 这种方法是servlet,编写好在web.xml里配置servlet-class和servlet-mapping即可使用后台(服务端)java服务代码:(上传至ROOT/lqxcPics文件夹下)<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@     page contentType="text/html;cha......
  • 如何将word公式粘贴到xhEditor里面
    ​ 在之前在工作中遇到在富文本编辑器中粘贴图片不能展示的问题,于是各种网上扒拉,终于找到解决方案,在这里感谢一下知乎中众大神以及TheViper。通过知乎提供的思路找到粘贴的原理,通过TheViper找到粘贴图片的方法。其原理为一下步骤:监听粘贴事件;【用于插入图片】获取光标位置;【......
  • 文档在线预览(二)word、pdf文件转html以实现文档在线预览
    @目录一、将文件转换成html字符串1、将word文件转成html字符串2、将pdf文件转成html字符串二、将文件转换成html,并生成html文件FileUtils类将html字符串生成html文件示例:1、将word文件转换成html文件2、将pdf文件转换成html文件实现文档在线预览的方式除了上篇文章《文档在线预览......
  • WordCount案例实操
    WordCount案例实操java代码WordCountMapper类packagecom.guodaxia.mapreduce.wordcount;importorg.apache.hadoop.io.IntWritable;importorg.apache.hadoop.io.LongWritable;importorg.apache.hadoop.io.Text;importorg.apache.hadoop.mapreduce.Mapper;importjav......
  • 渗透---WordPress网站
    WordPress简介WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把WordPress当作一个内容管理系统(CMS)来使用。WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,用......
  • 渗透--WordPress网站
    WordPress简介WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把WordPress当作一个内容管理系统(CMS)来使用。WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,用......