工作中,经常需要拟定合同,一般都有固定的模板,在特定的位置填写内容。通过zOffice编辑合同文件时,可以在模板需要填写的位置预设书签,配合zOffice SDK使用,利用zOffice书签双向定位的特性,更方便的填写合同,接下来本文将演示如何通过zOffice SDK实现书签双向定位。
一、zOffice简介
zOffice提供云端Office能力,包括word、excel、ppt三类办公文档的在线协同编辑,通过专业级的文档能力,高效的协作体验,内容级的安全管控,丰富的集成开发接口,来赋能企业的业务系统,帮助业务系统实现文档在线预览和编辑,文档操作过程全部线上进行,完成在线办公的场景闭环。
zOffice链接:https://www.filez.com/zoffice
zOfficeSDK是针对zOffice在线文档而开发的函数库,可以让我们对在线文档进行一些实用的操作。
二、书签双向定位实现
(1)准备工作
我们首先制作一个简单的合同模板,预设三个书签
(2)通过sdk获取书签列表
调用ZOfficeSDK.mount挂载文件
通过Bookmarks.toJson()获取当前文件所有书签名字,将书签列表列在页面上
(3)通过书签列表定位书签
当合同文件内容较多时,需要填写的位置,可能分布在不同页的不同位置,人工查找需要时间,此时我们可以利用bookmark.focus()滚动到书签所在页,快速定位到书签位置。
(4)点击书签,高亮列表对应区域
点击合同内容,光标切换到书签区域时,想要在列表中高亮对应项,以便做一些自定义操作,可以通过监听selectionChange事件实现,当监听到selectionChange时,将光标位置与所有的书签位置进行比较,若光标位置位于某个书签内,就去高亮列表中对应项。
三、总结
前面我们介绍了书签双向定位的基础用法,其实开启内容保护后,利用zOffice的可编辑区域也可以实现同样的功能,同时,通过可编辑区域来实现可以限制合同内容的修改,只允许修改预设部分,更加安全可靠。配合zOffice SDK的其他api,还可以覆盖更多的场景,想要了解更多的话,请查看“联想Filez协同办公”博客的其他相关文章。