pageoffice6 在线编辑 word 文件时禁止拷贝到外部

发布时间 2023-11-02 09:46:17作者: qianxi

有些特殊情况下,希望用户可以在线编辑Word文档,也允许用户拷贝本地电脑或网络上的资料到Word文档中进行编辑,但是不希望用户把在线Word文档中的内容另存到本地或选择并拷贝出去,此时只是禁用另存、禁用下载是不够的,还需要禁止复制粘贴功能,否则用户全选拷贝文档内容到外部新建的文档,也会造成文档的外泄。

PageOfficeCtrl对象提供的两个禁止拷贝的属性:

AllowCopy,完全禁用Word的拷贝功能,同时禁用键盘上的拷屏键。优先级高于DisableCopyOnly。缺点:会影响到整个操作系统的复制粘贴功能,都不能使用了。(关闭PageOffice的窗口就会恢复操作系统的复制粘贴功能)

DisableCopyOnly,禁止在线Word中的内容拷贝到外部,但允许外部文档内容拷贝到在线Word中。优点:精准控制Word的拷贝功能,最大程度上防止了文档的外泄。仅限企业版使用。

如果无需考虑用户拷贝本地内容到在线Word中的需求,那么只需设置AllowCopy为false,完全禁用Word拷贝功能就足够了。既要禁止拷贝在线文档中的内容到外部,防止文件外泄,又要拷贝外部数据到在线文档中,方便用户编辑,就如本文开始所描述的情况,那就只能在禁用另存和下载的同时,使用DisableCopyOnly属性提供的功能禁止Word拷贝到外部了。

注意:
DisableCopyOnly不要与AllowCopy属性同时使用,否则DisableCopyOnly属性不生效。

PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
//poCtrl.setAllowCopy(false); //如需完全禁用Word的拷贝,请使用此属性。优先级高于DisableCopyOnly。
poCtrl.setDisableCopyOnly(true);//如只是禁止拷贝文档内容到外部,请使用此属性。仅限企业版。
//webOpen的第一个参数支持能够输出下载文件的Url相对地址或者文件在服务器上的磁盘路径两种方式
//查看详细,请在本站搜索“PageOffice属性或方法中涉及到的URL路径或磁盘路径的说明”
poCtrl.webOpen("D:\\test.docx", OpenModeType.docNormalEdit, "张佚名");

参考链接:编辑时禁止拷贝到外部