27
27
* @class
28
28
*/
29
29
var AnnotationsLayerBuilder = ( function AnnotationsLayerBuilderClosure ( ) {
30
- var CustomStyle = PDFJS . CustomStyle ;
31
-
32
30
/**
33
31
* @param {AnnotationsLayerBuilderOptions } options
34
32
* @constructs AnnotationsLayerBuilder
@@ -56,22 +54,14 @@ var AnnotationsLayerBuilder = (function AnnotationsLayerBuilderClosure() {
56
54
57
55
this . pdfPage . getAnnotations ( parameters ) . then ( function ( annotations ) {
58
56
viewport = viewport . clone ( { dontFlip : true } ) ;
59
- var data , element , i , ii ;
60
57
61
58
if ( self . div ) {
62
59
// If an annotationLayer already exists, refresh its children's
63
60
// transformation matrices.
64
- for ( i = 0 , ii = annotations . length ; i < ii ; i ++ ) {
65
- data = annotations [ i ] ;
66
- element = self . div . querySelector (
67
- '[data-annotation-id="' + data . id + '"]' ) ;
68
- if ( element ) {
69
- CustomStyle . setProp ( 'transform' , element ,
70
- 'matrix(' + viewport . transform . join ( ',' ) + ')' ) ;
71
- }
72
- }
73
- self . div . removeAttribute ( 'hidden' ) ;
61
+ PDFJS . AnnotationLayer . update ( viewport , self . div , annotations ) ;
74
62
} else {
63
+ // Create an annotation layer div and render the annotations
64
+ // if there is at least one annotation.
75
65
if ( annotations . length === 0 ) {
76
66
return ;
77
67
}
@@ -80,19 +70,10 @@ var AnnotationsLayerBuilder = (function AnnotationsLayerBuilderClosure() {
80
70
self . div . className = 'annotationLayer' ;
81
71
self . pageDiv . appendChild ( self . div ) ;
82
72
83
- for ( i = 0 , ii = annotations . length ; i < ii ; i ++ ) {
84
- data = annotations [ i ] ;
85
- if ( ! data || ! data . hasHtml ) {
86
- continue ;
87
- }
88
-
89
- element = PDFJS . AnnotationLayer . getHtmlElement ( data , self . pdfPage ,
90
- viewport ,
91
- self . linkService ) ;
92
- if ( typeof mozL10n !== 'undefined' ) {
93
- mozL10n . translate ( element ) ;
94
- }
95
- self . div . appendChild ( element ) ;
73
+ PDFJS . AnnotationLayer . render ( viewport , self . div , annotations ,
74
+ self . pdfPage , self . linkService ) ;
75
+ if ( typeof mozL10n !== 'undefined' ) {
76
+ mozL10n . translate ( self . div ) ;
96
77
}
97
78
}
98
79
} ) ;
0 commit comments