Skip to content
Browse files

Merge pull request #1568 from yurydelendik/issue-1557

Fixes annotations; adds text annotation icon
  • Loading branch information...
2 parents 89aa004 + 237e1d9 commit cec7a92a993383e47abe8727f5cfca917f4539c5 @brendandahl brendandahl committed Apr 18, 2012
Showing with 57 additions and 7 deletions.
  1. +2 −1 src/core.js
  2. +46 −0 web/images/text.svg
  3. +9 −6 web/viewer.js
View
3 src/core.js
@@ -283,7 +283,8 @@ var Page = (function PageClosure() {
var title = annotation.get('T');
item.content = stringToPDFString(content || '');
item.title = stringToPDFString(title || '');
- item.name = annotation.get('Name').name;
+ item.name = !annotation.has('Name') ? 'Note' :
+ annotation.get('Name').name;
break;
default:
TODO('unimplemented annotation type: ' + subtype.name);
View
46 web/images/text.svg
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<svg
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ height="40"
+ width="40"
+ id="svg2995"
+ version="1.1">
+
+ <rect
+ style="fill:#f1e47b;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-opacity:1"
+ id="rect3009"
+ width="30.169491"
+ height="24.576269"
+ x="4.237288"
+ y="6.7796612" />
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3781"
+ width="23.38983"
+ height="1.1864407"
+ x="7.6271186"
+ y="11.389831" />
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3781-1"
+ width="23.38983"
+ height="0.67796612"
+ x="7.6271191"
+ y="21.61017" />
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3781-7"
+ width="23.38983"
+ height="0.67796612"
+ x="7.4576273"
+ y="26.152542" />
+ <rect
+ style="fill:#000000;fill-opacity:1;stroke:none"
+ id="rect3781-1-4"
+ width="23.38983"
+ height="0.67796612"
+ x="7.6271186"
+ y="17.033899" />
+</svg>
View
15 web/viewer.js
@@ -805,17 +805,20 @@ var PageView = function pageView(container, pdfPage, id, scale,
container.className = 'annotComment';
var image = createElementWithStyle('img', item);
+ var type = item.type;
+ var rect = viewport.convertToViewportRectangle(item.rect);
+ rect = PDFJS.Util.normalizeRect(rect);
image.src = kImageDirectory + type.toLowerCase() + '.svg';
+ image.alt = '[' + type + ' Annotation]';
var content = document.createElement('div');
content.setAttribute('hidden', true);
var title = document.createElement('h1');
var text = document.createElement('p');
- var offsetPos = Math.floor(item.x - view.x + item.width);
- content.style.left = (offsetPos * scale) + 'px';
- content.style.top = (Math.floor(item.y - view.y) * scale) + 'px';
+ content.style.left = Math.floor(rect[2]) + 'px';
+ content.style.top = Math.floor(rect[1]) + 'px';
title.textContent = item.title;
- if (!item.content) {
+ if (!item.content && !item.title) {
content.setAttribute('hidden', true);
} else {
var e = document.createElement('span');
@@ -828,11 +831,11 @@ var PageView = function pageView(container, pdfPage, id, scale,
}
text.appendChild(e);
image.addEventListener('mouseover', function annotationImageOver() {
- this.nextSibling.removeAttribute('hidden');
+ content.removeAttribute('hidden');
}, false);
image.addEventListener('mouseout', function annotationImageOut() {
- this.nextSibling.setAttribute('hidden', true);
+ content.setAttribute('hidden', true);
}, false);
}

0 comments on commit cec7a92

Please sign in to comment.
Something went wrong with that request. Please try again.