如何通过Office JS API将Word文档或单个段落设置为只读?
Office JS API 实现Word文档/段落只读(对应部分保护功能)
可以通过Office JS API实现你需要的「保护文档整体只读、开放部分段落编辑」或「单独设置某段落为只读」的功能,对应官方文档描述的部分保护逻辑,具体实现如下:
一、整文档设为只读,开放指定段落编辑
先启用文档的只读保护,再为需要编辑的段落解除保护:
await Word.run(async (context) => { // 启用文档只读保护,可选设置密码 context.document.protection.protect("readOnly", "yourPassword"); // 定位到需要开放编辑的段落(示例:获取第二段) const editablePara = context.document.body.paragraphs.getFirst().getNext(); editablePara.protection.unprotect(); await context.sync(); });
二、单独设置单个段落为只读,其余部分可编辑
先确保文档未被整体保护,再为目标段落添加只读权限:
await Word.run(async (context) => { // 若文档之前有保护,先解除(需密码则传入) context.document.protection.unprotect("yourPassword"); // 定位到要设为只读的段落(示例:获取第一段) const readOnlyPara = context.document.body.paragraphs.getFirst(); // 设置该段落为只读 readOnlyPara.protection.protect("readOnly"); await context.sync(); });
注意事项
- 需使用Office 2016及以上桌面版,或在线版Word,API才支持该功能
- 保护设置会随文档保存,重新打开后依然生效
- 若需精细控制编辑权限(比如仅特定用户可编辑),可在
protect方法中传入用户列表:readOnlyPara.protection.protect("readOnly", { users: ["user@domain.com"] })
内容的提问来源于stack exchange,提问作者Davide Bono
相关产品推荐
相关产品推荐

