Some test text!
Web / Guides / Hide certain annotations
Sometimes it is useful to display only a subset of annotations in the notes panel. This guide talks about how the notes panel can be configured to hide certain annotations by using the annotation's Listable property or the setCustomNoteFilter API.
Listable is a property that exists on all types of annotations. It controls if an annotation should be shown in the notes panel. The following example shows how you can hide all rectangle annotations.
WebViewer({
// your constructor options here
}, viewerElement)
.then(instance => {
const { annotationManager } = instance.Core;
annotationManager.addEventListener('annotationChanged', (annotations, action) => {
if (action === 'add') {
const rectangles = annotations.filter(annot => annot instanceof instance.Core.Annotations.RectangleAnnotation);
rectangles.forEach(rectangle => {
rectangle.Listable = false;
});
annotationManager.drawAnnotationsFromList(rectangles);
annotationManager.trigger('annotationChanged', [rectangles, 'modify']);
}
})
});
An annotation will neither appear in thumbnails nor show in the printed document if it's not Listable. Sometimes we may just want to customize the notes panel and leave other components untouched. In this case, setCustomNoteFilter is the right choice.
WebViewer({
// your constructor options here
}, viewerElement)
.then(instance => {
// only show non-rectangle annotations
instance.UI.setCustomNoteFilter(annot => !(annot instanceof instance.Core.Annotations.RectangleAnnotation))
});
Trial setup questions? Ask experts on Discord
Need other help? Contact Support
Pricing or product questions? Contact Sales