文本选择
福昕 PDF SDK(Web)支持用户在 Viewer 中选择文本,并基于选区执行复制、创建文本标记注释或接入自定义业务工具。完整 UI(UIExtension)已内置文本选择后的浮动工具条;需要自定义工具条或读取选区数据时,可使用 TextSelectionTool 公开接口。
相关接口包括:
TextSelectionTool.getSelectionInfo():获取当前选中文本、所在页面和选区矩形。TextSelectionTool.copy():复制当前选中文本。
获取选区信息
getSelectionInfo() 返回当前选中文本信息,包含选中文本、页面对象和每行选区矩形。
javascript
const selectionInfo = await textSelectionTool.getSelectionInfo();
if (selectionInfo) {
console.log(selectionInfo.text);
console.log(selectionInfo.page.getIndex());
console.log(selectionInfo.rectArray);
}
rectArray 中的矩形可用于创建文本标记注释或业务侧定位。跨页选择时,选区信息可能包含多个页面的选区数据,处理时应按页面拆分。
复制选中文本
javascript
await textSelectionTool.copy();
复制到剪贴板通常需要在用户触发的事件中执行,并受浏览器安全策略限制。
与文本标记注释联动
完整 UI 的文本选择浮动工具条通常已提供高亮、下划线、删除线等操作。自定义流程中,可以先通过 getSelectionInfo() 获取选区文本和矩形,再根据 注释 文档中公开的 PDFPage.addAnnot() 接口创建对应文本标记注释。
创建或修改注释后,如需保存到文件,应按文档保存流程导出 PDF。