Foxit PDF SDK for HarmonyOS  3.0
uiextensions.IAnnotHandler Class Reference

Public Member Functions

 addAnnot (annot, addUndo)
 
 getAnnotBBox (annot)
 
 getType ()
 
 isActive ()
 
 isHitAnnot (annot, point|GeometryUtil.FGPoint)
 
 modifyAnnot (annot, addUndo)
 
 modifyAnnotWithOldAttributes (annot, addUndo, oldAttributes)
 
 onAnnotChanged (annot, property, oldValue, newValue, flag)
 
 onAnnotDeselected (annot, reRender)
 
 onAnnotSelected (annot, reRender)
 
 onDraw (pageIndex, canvas, annot)
 
 onPageViewLongPress (pageIndex, gestureEvent, annot)
 
< boolean > onPageViewPan (pageIndex, gestureEvent, action, annot)
 
< boolean > onPageViewShouldBegin (pageIndex, event, annot)
 
 onPageViewTap (pageIndex, gestureEvent, annot)
 
 onTouchEvent (pageIndex, motionEvent, annot)
 
 removeAnnot (annot, addUndo, cb< boolean >)
 
< boolean > shouldViewCtrlDraw (annot)
 
 showMenu ()
 

Detailed Description

注释处理器接口

定义PDF注释的编辑处理逻辑,提供注释的增删改查及交互事件处理能力

Member Function Documentation

◆ addAnnot()

uiextensions.IAnnotHandler.addAnnot ( annot  ,
addUndo   
)

添加注释到指定页面

Parameters
annot要添加的注释对象
addUndo是否允许撤销操作(可选参数)

◆ getAnnotBBox()

uiextensions.IAnnotHandler.getAnnotBBox ( annot  )

获取注释包围框

Parameters
annot目标注释对象
Returns
返回描述注释位置和大小的矩形区域

◆ getType()

uiextensions.IAnnotHandler.getType ( )

获取注释处理器类型标识 通常使用标准注释类型,如FoxitRDKNative.pdf.annots.Annot.e_Note作为类型标识

Returns
返回处理器类型的数字标识

◆ isActive()

uiextensions.IAnnotHandler.isActive ( )

判断当前注释处理器是否处于活跃使用状态(目前只有 FormAnnotHandler和DigitalSignatureAnnotHandler有做了实现)

Returns
返回布尔值表示是否处于活跃使用状态

◆ isHitAnnot()

uiextensions.IAnnotHandler.isHitAnnot ( annot  ,
point|GeometryUtil.  FGPoint 
)

判断触摸点是否命中注释

Parameters
annot目标注释对象
point触摸点坐标
Returns
返回布尔值表示是否命中

◆ modifyAnnot()

uiextensions.IAnnotHandler.modifyAnnot ( annot  ,
addUndo   
)

修改注释属性

Parameters
annot要修改的注释对象
addUndo是否允许撤销操作(可选参数)

◆ modifyAnnotWithOldAttributes()

uiextensions.IAnnotHandler.modifyAnnotWithOldAttributes ( annot  ,
addUndo  ,
oldAttributes   
)

带历史记录的注释修改

Parameters
annot已修改的注释对象
addUndo是否允许撤销操作(可选参数)
oldAttributes修改前的属性记录(可选参数)

◆ onAnnotChanged()

uiextensions.IAnnotHandler.onAnnotChanged ( annot  ,
property  ,
oldValue  ,
newValue  ,
flag   
)

注释属性变更事件

Parameters
annot目标注释对象
property变更的属性标识
oldValue旧属性值
newValue新属性值
flag差异标记(可选参数)

◆ onAnnotDeselected()

uiextensions.IAnnotHandler.onAnnotDeselected ( annot  ,
reRender   
)

注释取消选中事件回调

Parameters
annot当前被取消选中的注释
reRender是否需要重新渲染

◆ onAnnotSelected()

uiextensions.IAnnotHandler.onAnnotSelected ( annot  ,
reRender   
)

注释选中事件回调

Parameters
annot被选中的注释对象
reRender是否需要重新渲染

◆ onDraw()

uiextensions.IAnnotHandler.onDraw ( pageIndex  ,
canvas  ,
annot   
)

页面绘制事件回调

Parameters
pageIndex页面索引(0到总页数-1)
canvasPDF视图的画布上下文
annot要绘制的注释对象(可为空)

◆ onPageViewLongPress()

uiextensions.IAnnotHandler.onPageViewLongPress ( pageIndex  ,
gestureEvent  ,
annot   
)

长按事件处理

Parameters
pageIndex页面索引
gestureEvent长按手势事件
annot关联的注释对象
Returns
返回布尔值表示是否处理

◆ onPageViewPan()

<boolean> uiextensions.IAnnotHandler.onPageViewPan ( pageIndex  ,
gestureEvent  ,
action  ,
annot   
)

平移手势处理

Parameters
pageIndex页面索引
gestureEvent平移手势事件
action动作类型
annot关联的注释对象
Returns
返回布尔值表示是否处理

◆ onPageViewShouldBegin()

<boolean> uiextensions.IAnnotHandler.onPageViewShouldBegin ( pageIndex  ,
event  ,
annot   
)

在平移手势开始前会先进行这个判断,是否可以开始平移手势

Parameters
pageIndex页面索引
event平移手势事件
annot关联的注释对象
Returns
返回Promise表示是否允许手势

◆ onPageViewTap()

uiextensions.IAnnotHandler.onPageViewTap ( pageIndex  ,
gestureEvent  ,
annot   
)

单击事件处理

Parameters
pageIndex页面索引
gestureEvent点击手势事件
annot关联的注释对象(可选参数)
Returns
返回Promise表示处理结果

◆ onTouchEvent()

uiextensions.IAnnotHandler.onTouchEvent ( pageIndex  ,
motionEvent  ,
annot   
)

触摸事件处理

Parameters
pageIndex页面索引
motionEvent触摸事件对象
annot关联的注释对象
Returns
返回Promise表示处理结果

◆ removeAnnot()

uiextensions.IAnnotHandler.removeAnnot ( annot  ,
addUndo  ,
cb< boolean >   
)

删除指定注释

Parameters
annot要删除的注释对象
addUndo是否允许撤销操作(可选参数)
cb操作完成后的回调函数(可选参数)

◆ shouldViewCtrlDraw()

<boolean> uiextensions.IAnnotHandler.shouldViewCtrlDraw ( annot  )

判断PDF视图是否应绘制注释。

Parameters
annot目标注释对象
Returns
返回布尔值表示是否绘制

◆ showMenu()

uiextensions.IAnnotHandler.showMenu ( )

显示上下文菜单

Returns
返回布尔值表示是否处理菜单显示