mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-07 20:31:06 -05:00
28 lines
867 B
CoffeeScript
28 lines
867 B
CoffeeScript
|
app = angular.module 'pdfHighlights', []
|
||
|
|
||
|
app.factory 'pdfHighlights', [ () ->
|
||
|
class pdfHighlights
|
||
|
|
||
|
constructor: (options) ->
|
||
|
@highlightsLayerDiv = options.highlights
|
||
|
@viewport = options.viewport
|
||
|
@highlightElements = []
|
||
|
|
||
|
addHighlight: (left, top, width, height) ->
|
||
|
rect = @viewport.convertToViewportRectangle([left, top, left + width, top + height])
|
||
|
rect = PDFJS.Util.normalizeRect(rect)
|
||
|
element = document.createElement("div")
|
||
|
element.style.left = Math.floor(rect[0]) + 'px'
|
||
|
element.style.top = Math.floor(rect[1]) + 'px'
|
||
|
element.style.width = Math.ceil(rect[2] - rect[0]) + 'px'
|
||
|
element.style.height = Math.ceil(rect[3] - rect[1]) + 'px'
|
||
|
@highlightElements.push(element)
|
||
|
@highlightsLayerDiv.appendChild(element)
|
||
|
element
|
||
|
|
||
|
clearHighlights: () ->
|
||
|
for h in @highlightElements
|
||
|
h.remove()
|
||
|
@highlightElements = []
|
||
|
]
|