new AnnotationManager(docViewer)
Creates a new instance of AnnotationManager.
Parameters:
Name | Type | Description |
---|---|---|
docViewer |
CoreControls.DocumentViewer |
Properties:
Name | Type | Description |
---|---|---|
controlPointSize |
number | The size of annotation control points. |
controlPointHitBoxScale |
number | The scale of the hit box of the annotation control points. Increase to increase the selectable area. |
Methods
-
addAnnotation(annotation, imported)
-
Adds the specified annotation to the managed list of annotations.
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation.
imported
boolean Whether the annotation was imported from another source or not.
-
addAnnotations(annotations, imported)
-
Adds the specified annotations to the managed list of annotations
Parameters:
Name Type Description annotations
array An array of annotations.
imported
boolean Whether the annotations were imported from another source or not
-
canModify(annotation)
-
Whether or not the current user can modify the annotation.
Parameters:
Name Type Description annotation
object The annotation to check permissions on.
-
canModifyContents(annotation)
-
Whether or not the current user can modify the annotation's contents.
Parameters:
Name Type Description annotation
object The annotation to check permissions on.
-
createAnnotationReply(annotation, initialText)
-
Creates an annotation that replies to the passed in annotation. Annotation replies are sticky note annotations.
Parameters:
Name Type Description annotation
Annotations.Annotation The annotation to add a reply to
initialText
string The initialText for the annotation, defaults to the empty string
Returns:
The created annotation reply
-
deleteAnnotation(annotation, imported [, force])
-
Deletes the specified annotation in the managed list of annotations. If an annotation is successfully deleted, the annotationChanged event will be fired with a "delete" action.
Parameters:
Name Type Argument Description annotation
Annotations.Annotation An instance of Annotation.
imported
boolean Whether the annotation was imported from another source or not
force
boolean <optional>
If true then the annotation will be deleted regardless of the user's current permissions
-
deleteAnnotations(annotation, imported [, force])
-
Deletes the specified annotations in the managed list of annotations. If an annotation is successfully deleted, the annotationChanged event will be fired with a "delete" action.
Parameters:
Name Type Argument Description annotation
array An array of annotations
imported
boolean Whether the annotations were imported from another source or not
force
boolean <optional>
If true then the annotations will be deleted regardless of the user's current permissions
-
deregisterAnnotationType(elementName, annotationClass)
-
Deregisters an annotation class.
Parameters:
Name Type Description elementName
string the string representing the xml element name of the annotation
annotationClass
Annotations.Annotation the class (constructor) of the annotation
Returns:
true if deregistration was successful
- Type
- Boolean
-
deselectAllAnnotations()
-
Deselects all annotations. If an annotation is successfully deselected then the annotationSelected event will be trigger with a "deselected" action and a null value as the array of annotations parameter. Note: the annotationSelected event has two parameters: an array of annotations and a string value of either "selected" or "deselected"
-
deselectAnnotation(annotation)
-
Deselects the specified annotation. If an annotation is successfully selected then the annotationSelected event will be fired with a "selected" action. Note: the annotationSelected event has two parameters: an array of annotations and a string value of either "selected" or "deselected"
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation.
-
disableFreeTextEditing()
-
Disables the editing of free text annotations directly on the annotation.
-
drawAnnotations(pageNumber [, overrideCanvas] [, majorRedraw] [, overrideContainer])
-
Draws all annotations associated with the given page number. Note that the entire annotation canvas for the page will be redrawn.
Parameters:
Name Type Argument Description pageNumber
number The page number for the page to draw.
overrideCanvas
object <optional>
Optionally draw directly to this canvas
majorRedraw
bool <optional>
signify that this is a major redraw, so widget-like annotations must be re-rendered as well
overrideContainer
<optional>
-
drawAnnotationsFromList(annotationList)
-
Draws all the pages associated with the annotations in the list as long the page is visible.
Parameters:
Name Type Description annotationList
array List of annotations
-
exportAnnotations(options)
-
Exports all annotations as an XFDF (XML) string
Parameters:
Name Type Description options
object Options for the export. Set options.widgets or options.links or options.fields to false to disable exporting of them.
Properties
Name Type Description annotList
array An array of annotations to only export the XFDF for those particular annotations.
widgets
boolean Whether to export widget information
links
boolean Whether to export links information
fields
boolean Whether to export fields information
Returns:
The XFDF (XML) annotations as a string
- Type
- string
-
filterAnnotations(filterStr)
-
Causes annotations to be filtered based on a filter string on author. Only annotations by the specified author will get displayed on the document. Note that filtered annotations are not deleted, they are just not visible.
Parameters:
Name Type Description filterStr
string an author name
-
getAnnotationById(id, annotationList)
-
Gets an annotation object by the annotation's ID.
Parameters:
Name Type Description id
string The ID of the annotation.
annotationList
Array Optionally pass your own array of annotations to search in
Returns:
An annotation object.
-
getAnnotationByMouseEvent(event)
-
Gets the annotation by a DOM mouse event. This method can be used to test if a mouse point will hit any annotations on page.
Parameters:
Name Type Description event
type A DOM mouse event.
Returns:
An annotation object.
-
getAnnotationCopy(annotation)
-
Returns a deep copy of the annotation
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation to be copied.
Returns:
a copy of the annotation, null if annotation cannot be copied
-
getAnnotationFromPopup(popup)
-
Gets the annotation associated with the popup object.
Parameters:
Name Type Description popup
object The popup object associated with an annotation
Returns:
The annotation that the popup belongs to
-
getAnnotationsList()
-
Gets the list of all annotations managed by the AnnotationManager.
Returns:
An array of Annotations.
- Type
- Array.<Annotations.Annotation>
-
getAnnotCommand()
-
Gets an XML string specifying the added, modified and deleted annotations. Added and modified annotations will have their XFDF representation included while deleted annotations will only include their id.
Returns:
The command string
- Type
- string
-
getCurrentUser()
-
Returns the user name of the current user.
Returns:
The user name of the current user.
- Type
- string
-
getFieldManager()
-
Gets the associated field manager.
Returns:
-
getIsAdminUser()
-
Returns whether the current user has admin privileges.
Returns:
true if the current user is an admin, false otherwise.
- Type
- boolean
-
getMarkupOff()
-
Returns whether the viewer currently has annotations toggled off.
Returns:
true if annots are currently toggled off, false otherwise.
- Type
- boolean
-
getReadOnly()
-
Returns whether the viewer is currently in read-only mode.
Returns:
true if the current viewer is in read-only mode, false otherwise.
- Type
- boolean
-
getRegisteredAnnotationTypes()
-
Gets a map of registered annotations. This can be modified directly, instead of using AnnotationManager#registerAnnotationType and AnnotationManager#deregisterAnnotationType.
Returns:
a JavaScript object containing a key-value map, where the key is the annotation element name and the value is an array of Annotation classes.
- Type
- object
-
getRootAnnotation(annotation)
-
Gets the root annotation that this annotation is replying to. If this annotation is not replying to anything then the root is itself.
Parameters:
Name Type Description annotation
Annotations.Annotation The annotation from which to find the root annotation in the reply chain
Returns:
The root annotation
-
getSelectedAnnotations()
-
Returns the list of selected annotations.
Returns:
An array of selected annotations.
- Type
- Array.<Annotations.Annotation>
-
getUseFilter()
-
Returns whether the viewer is using a filter on annotations to be displayed.
Returns:
true if annots are currently filtered, false otherwise.
- Type
- boolean
-
hasAnnotation(annotation)
-
Determines if the specified annotation exists in the managed list of annotations.
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation.
-
hideAnnotation(annot)
-
Hides the specified annotation.
Parameters:
Name Type Description annot
Annotations.Annotation The annotation to hide
-
hideAnnotations(annots)
-
Hides all of the annotations in the list
Parameters:
Name Type Description annots
array Array of annotations to hide
-
importAnnotations(xfdfString)
-
Loads XFDF (XML) annotations into the viewer synchronously.
Parameters:
Name Type Description xfdfString
string The XFDF (XML) annotations as a string
Returns:
Returns an array of the annotation objects imported
- Type
- array
-
importAnnotationsAsync(xfdfString, callback, options)
-
Loads XFDF annotations into the viewer asynchronously.
Parameters:
Name Type Description xfdfString
string The XFDF annotations as a string
callback
function The function that is called when the annotations have been imported. the list of annotations that were added is passed to the callback
options
object The options for importing
Properties
Name Type Description batchSize
number The number of annotations to import in each batch (default 25)
batchDelay
number The amount of time in milliseconds to delay between importing each batch (default 0)
-
importAnnotCommand(xfdfString)
-
Updates the viewer with the xfdf changes (add/modify/delete) in the xml string
Parameters:
Name Type Description xfdfString
string The XML annotation updates as a string
Returns:
The list of annotations that were updated
- Type
- array
-
isAnnotationSelected(annotation)
-
Returns whether an annotation is currently selected
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation.
Returns:
true if annotation is selected, false otherwise
- Type
- boolean
-
jumpToAnnotation(annotation)
-
Jumps to the page of the annotation and if it isn't visible then centers it in the window.
Parameters:
Name Type Description annotation
Annotations.Annotation The annotation to be jumped to.
-
pasteCopiedAnnotations()
-
Pastes the currently copied annotations.
-
redrawAnnotation(annotation)
-
Redraws the specified annotation. Note that the entire annotation canvas for the page will be redrawn.
Parameters:
Name Type Description annotation
Annotations.Annotation The annotation to be redrawn.
-
registerAnnotationType(elementName, annotationClass)
-
Registers an annotation class. Annotations that are registered will be serialized and deserialized by the AnnotationManager.
Parameters:
Name Type Description elementName
string the string representing the xml element name of the annotation
annotationClass
Annotations.Annotation the class (constructor) of the annotation
Returns:
true if registration was successful
- Type
- Boolean
-
selectAnnotation(annotation)
-
Selects the specified annotation. If an annotation is successfully selected then the annotationSelected event will be fired with a "selected" action. Note: the annotationSelected event has two parameters: an array of annotations and a string value of either "selected" or "deselected"
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation.
-
selectAnnotations(annotation)
-
Selects the specified annotations. If an annotation is successfully selected then the annotationSelected event will be fired with a "selected" action. Note: the annotationSelected event has two parameters: an array of annotations and a string value of either "selected" or "deselected"
Parameters:
Name Type Description annotation
Array.<Annotations.Annotation> An array of Annotations.
-
setCurrentUser(User)
-
sets the current user of the viewer.
Parameters:
Name Type Description User
string the user name of the current user.
-
setIsAdminUser(isAdminUser)
-
Sets whether the current user is an admin user.
Parameters:
Name Type Description isAdminUser
boolean true if the current user is an admin, false otherwise.
-
setMarkupOff(markupOff)
-
Sets whether annotations are toggled off.
Parameters:
Name Type Description markupOff
boolean true if the annotations are toggled off, false otherwise.
-
setNoteContents(annotation, text)
-
Sets the value of the note for the specified annotation.
Parameters:
Name Type Description annotation
Annotations.Annotation The annotation that will have its note updated.
text
string The value to update the note text to.
-
setPermissionCheckCallback(callback)
-
Sets the function that should be used to determine if the annotation can be modified or not.
Parameters:
Name Type Description callback
function The function that should be called. Should return true or false.
-
setReadOnly(readOnly)
-
Sets whether the viewer is currently in read-only mode.
Parameters:
Name Type Description readOnly
boolean true if the viewer is in read-only mode, false otherwise.
-
setRedrawThrottle(value)
-
Sets the rate at which the redrawing of annotations is throttled. This can improve annotation rendering on lower quality devices and browsers.
Parameters:
Name Type Description value
int The throttled rate at which annotations will be redrawn, in milliseconds
-
setSubmitFormActionCallback(callback)
-
Sets the function to be called when a submit form action is triggered.
Parameters:
Name Type Description callback
function The function that should be called. Will be passed the form data.
-
setUseFilter(useFilter)
-
Sets whether annotations are to be filtered based on author.
Parameters:
Name Type Description useFilter
boolean true if the annotations are to be filtered, false otherwise.
-
showAnnotation(annot)
-
Shows the annotation
Parameters:
Name Type Description annot
Annotations.Annotation The annotation to show
-
showAnnotations(annots)
-
Shows all of the annotations in the list
Parameters:
Name Type Description annots
array Array of annotations to show
-
toggleAnnotations()
-
Toggles annotations on/off. i.e. Show all annotations or hide all annotations.
-
updateAnnotation(annotation)
-
/* Redraws the annotations on the same page as the specified annotation if the annotation has been added.
Parameters:
Name Type Description annotation
Annotations.Annotation An instance of Annotation.
-
updateCopiedAnnotations()
-
Copies the currently selected annotations.
Events
-
addReply
-
Triggered when a reply has been added to an annotation
Parameters:
Name Type Description evt
object Event object
annotation
object The annotation that was added
parent
object The annotation that is the direct parent of the first annotation
root
object The annotation that is the root parent of the first annotation (may be the same as parent)
-
annotationChanged
-
Triggered when an annotation or annotations have been changed (added, deleted, modified). Attach like annotManager.on('annotationChanged', callback)
Parameters:
Name Type Description evt
object Event object, this has an imported property that will be true if the annotation change is the result of importing annotations using importAnnotations, importAnnotCommand or if the imported parameter is set to true when calling addAnnotations or deleteAnnotations
annotations
array The annotations that were changed
action
string The action that occurred (add, delete, modify)
-
annotationDoubleClicked
-
Triggered after an annotation has been double clicked
Parameters:
Name Type Description evt
object Event object
annotation
object The annotation that has been double clicked
-
annotationFiltered
-
Triggered after the annotations have been filtered.
Parameters:
Name Type Description evt
object Event object
annotationList
array List of all annotations
-
annotationHidden
-
Triggered after annotations have been hidden/shown.
Parameters:
Name Type Description evt
object Event object
annotationList
array List of annotations that were hidden or shown
hidden
boolean Whether the annotations have been hidden or shown
-
annotationSelected
-
Triggered after annotation selection has been changed.
Parameters:
Name Type Description evt
object Event object
annotationList
array List of annotations that have selected or deselected
action
string Either 'selected' or 'deselected'
-
annotationToggled
-
Triggered after annotations have been toggled on/off.
Parameters:
Name Type Description evt
object Event object
markupOff
boolean Whether the annotations are visible or not
annotationList
array List of all annotations
useFilter
boolean Whether a filter is being used or not
-
deleteReply
-
Triggered when a reply has been deleted from an annotation
Parameters:
Name Type Description evt
object Event object
annotation
object The annotation that was deleted
root
object The annotation that is the root parent of the first annotation
-
fieldChanged
-
Triggered when a field's value has been changed. Attach like annotManager.on('fieldChanged', callback)
Parameters:
Name Type Description evt
object Event object
field
object The field that was changed
value
string The field's new value
-
notify
-
Triggered when there is a notification related to annotations.
Parameters:
Name Type Description evt
object Event object
type
string The type of notification that has occurred
-
setNoteText
-
Triggered when the text should be set on a note
Parameters:
Name Type Description evt
object Event object
annotation
object The annotation that needs to have its note text updated
root
object The annotation that is the root parent of the first annotation