WPS 鸿蒙二开:打开时加水印与修订模式(清单)
社区同事问得最多的一类问题:文档能打开了,怎么加预览水印?怎么以修订模式打开?在 WPS Open SDK 鸿蒙对接里,这两类配置都挂在同一次打开请求上,不必另走一套接口。下文按清单写,方便对照联调。细节以官方对接文档为准。
能力落在哪
能力 | 入口 |
水印 | OpenFileRequest.wpsWaterMarkParams(WaterMark) |
修订 | OpenFileRequest.wpsRevisionParams(Revision) |
只读/可编辑 | enableEdit |
关窗回传 | wpsTransferType / enableTransferFile |
先注册成功,再打开。路径建议先拷进应用沙箱。
水印清单
Enable = true
WaterMaskText 非空
可选:Angle / FontColor / FontSize
赋给 wpsWaterMarkParams
只读预览也可以带水印。颜色过淡时,先调深确认逻辑再调美观。
修订清单
EnterReviseMode = true
UserName 有业务意义
通常配合 enableEdit = true
可选:ShowRevisionPanel、EnterRevisionSilent
只读状态下设修订,用户侧常感觉「没生效」。静默进入可减少弹窗,日志仍要记录。
推荐联调顺序
注册 OK
沙箱只读打开
只读 + 水印
可编辑
可编辑 + 修订
需要时再开回传
每步只改一类字段。出现 ERROR 先看 msg,再对上表。
短示例(思路)
const req = new OpenFileRequest(ctx, sandboxPath);
req.enableEdit = true;
const wm = new WaterMark();
wm.Enable = true;
wm.WaterMaskText = '内部资料';
req.wpsWaterMarkParams = wm;
const rev = new Revision();
rev.UserName = '审阅人';
rev.EnterReviseMode = true;
rev.ShowRevisionPanel = true;
req.wpsRevisionParams = rev;
await WPSApi.sendRequest(req);常见误区
误区 | 说明 |
未设 Enable | 水印对象空转 |
只读 + 修订 | 难产生有效修订痕迹 |
外部路径直传 | 权限不足导致泛化 ERROR |
未等注册就发送 | 抛异常,与策略无关 |
回传与水印混查 | 两套字段,分开排查 |
小结
水印与修订是打开策略:显式构造并赋值到 Request。先打开绿,再叠策略;回传另算。字段与示例以官方对接文档为准。欢迎在本圈补充真机现象与排查经验。
接入时确认 HAR、沙箱目录、正式包包名。换 HAR 后 clean。需要序列号时按凭据约定全局设置。把清单贴进联调页,新人对照会更快。
真机建议固定两条用例:只读预览加水印、可编辑进入修订。两条都绿后,再决定是否叠加关窗回传或更细的功能开关。水印文字与修订作者名尽量可配置,避免写死在页面。颜色过淡时先调深确认逻辑,再交给设计调美观。静默修订适合减少打扰,但首次联调可先关静默,确认面板行为符合预期。路径务必先落沙箱;外部 URI 权限不足时常见泛化 ERROR,容易被误判成「水印没生效」。未注册完成就发送会抛异常,与策略无关,应先查注册回调。
社区联调时,把 code / msg / 是否带水印 / 是否进修订写进反馈,比只说「不行」更利于定位。封装函数保证 Enable 与 EnterReviseMode 不会漏写。页面层只关心业务意图:预览要不要水印、审阅要不要修订。坚持按清单分步验证,策略相关问题通常会下降。细节以官方对接文档为准。