[Pkg-javascript-commits] [pdf.js] 154/207: Combine re element into constructPath
David Prévot
taffit at moszumanska.debian.org
Mon Jul 28 15:36:42 UTC 2014
This is an automated email from the git hooks/post-receive script.
taffit pushed a commit to branch master
in repository pdf.js.
commit 8407d28c9e3c7e9b5a7c77c9a48e27dc029c6150
Author: pramodhkp <prmdh1 at gmail.com>
Date: Tue Jun 24 01:37:31 2014 +0530
Combine re element into constructPath
---
src/core/evaluator.js | 3 +++
src/display/canvas.js | 36 +++++++++++++++++++++++-------------
src/display/pattern_helper.js | 2 +-
src/display/svg.js | 37 ++++++++++++-------------------------
4 files changed, 39 insertions(+), 39 deletions(-)
diff --git a/src/core/evaluator.js b/src/core/evaluator.js
index 29e42e2..b1f8542 100644
--- a/src/core/evaluator.js
+++ b/src/core/evaluator.js
@@ -852,6 +852,9 @@ var PartialEvaluator = (function PartialEvaluatorClosure() {
case OPS.closePath:
self.buildPath(operatorList, fn, args);
continue;
+ case OPS.rectangle:
+ self.buildPath(operatorList, fn, args);
+ continue;
}
operatorList.addOp(fn, args);
}
diff --git a/src/display/canvas.js b/src/display/canvas.js
index fcedbae..fab6687 100644
--- a/src/display/canvas.js
+++ b/src/display/canvas.js
@@ -977,6 +977,26 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
var x = current.x, y = current.y;
for (var i = 0, j = 0, ii = ops.length; i < ii; i++) {
switch (ops[i] | 0) {
+ case OPS.rectangle:
+ x = args[j++];
+ y = args[j++];
+ var width = args[j++];
+ var height = args[j++];
+ if (width === 0) {
+ width = this.getSinglePixelWidth();
+ }
+ if (height === 0) {
+ height = this.getSinglePixelWidth();
+ }
+ var xw = x + width;
+ var yh = y + height;
+ this.ctx.moveTo(x, y);
+ this.ctx.lineTo(xw, y);
+ this.ctx.lineTo(xw, yh);
+ this.ctx.lineTo(x, yh);
+ this.ctx.lineTo(x, y);
+ this.ctx.closePath();
+ break;
case OPS.moveTo:
x = args[j++];
y = args[j++];
@@ -1017,16 +1037,6 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
closePath: function CanvasGraphics_closePath() {
this.ctx.closePath();
},
- rectangle: function CanvasGraphics_rectangle(x, y, width, height) {
- if (width === 0) {
- width = this.getSinglePixelWidth();
- }
- if (height === 0) {
- height = this.getSinglePixelWidth();
- }
-
- this.ctx.rect(x, y, width, height);
- },
stroke: function CanvasGraphics_stroke(consumePath) {
consumePath = typeof consumePath !== 'undefined' ? consumePath : true;
var ctx = this.ctx;
@@ -1510,7 +1520,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
ury) {
// TODO According to the spec we're also suppose to ignore any operators
// that set color or include images while processing this type3 font.
- this.rectangle(llx, lly, urx - llx, ury - lly);
+ this.ctx.rect(llx, lly, urx - llx, ury - lly);
this.clip();
this.endPath();
},
@@ -1603,7 +1613,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
if (isArray(bbox) && 4 === bbox.length) {
var width = bbox[2] - bbox[0];
var height = bbox[3] - bbox[1];
- this.rectangle(bbox[0], bbox[1], width, height);
+ this.ctx.rect(bbox[0], bbox[1], width, height);
this.clip();
this.endPath();
}
@@ -1755,7 +1765,7 @@ var CanvasGraphics = (function CanvasGraphicsClosure() {
if (isArray(rect) && 4 === rect.length) {
var width = rect[2] - rect[0];
var height = rect[3] - rect[1];
- this.rectangle(rect[0], rect[1], width, height);
+ this.ctx.rect(rect[0], rect[1], width, height);
this.clip();
this.endPath();
}
diff --git a/src/display/pattern_helper.js b/src/display/pattern_helper.js
index 2dcf084..29b86f0 100644
--- a/src/display/pattern_helper.js
+++ b/src/display/pattern_helper.js
@@ -385,7 +385,7 @@ var TilingPattern = (function TilingPatternClosure() {
if (bbox && isArray(bbox) && 4 == bbox.length) {
var bboxWidth = x1 - x0;
var bboxHeight = y1 - y0;
- graphics.rectangle(x0, y0, bboxWidth, bboxHeight);
+ graphics.ctx.rect(x0, y0, bboxWidth, bboxHeight);
graphics.clip();
graphics.endPath();
}
diff --git a/src/display/svg.js b/src/display/svg.js
index 225bd11..46d94c8 100644
--- a/src/display/svg.js
+++ b/src/display/svg.js
@@ -321,9 +321,6 @@ var SVGGraphics = (function SVGGraphicsClosure(ctx) {
case OPS.constructPath:
this.constructPath(args[0], args[1]);
break;
- case OPS.rectangle:
- this.rectangle(args[0], args[1], args[2], args[3]);
- break;
case 92:
this.group(opTree[x].items);
break;
@@ -524,6 +521,17 @@ var SVGGraphics = (function SVGGraphicsClosure(ctx) {
for (var i = 0, j = 0; i < opLength; i++) {
switch (ops[i] | 0) {
+ case OPS.rectangle:
+ x = args[j++];
+ y = args[j++];
+ var width = args[j++];
+ var height = args[j++];
+ var xw = x + width;
+ var yh = y + height;
+ d += 'M' + x + ' ' + y + 'L' + xw + ' ' + y +
+ 'L' + xw + ' ' + yh + 'L' + xw + ' ' + yh +
+ 'L' + x + ' ' + yh + ' ' + 'Z';
+ break;
case OPS.moveTo:
x = args[j++];
y = args[j++];
@@ -567,6 +575,7 @@ var SVGGraphics = (function SVGGraphicsClosure(ctx) {
current.path.setAttributeNS(null, 'stroke-width', current.lineWidth);
current.path.setAttributeNS(null, 'stroke-dasharray', current.dashArray);
current.path.setAttributeNS(null, 'stroke-dashoffset', current.dashPhase);
+ current.path.setAttributeNS(null, 'fill', 'none');
this.tgrp.appendChild(current.path);
// Saving a reference in current.element so that it can be addressed
// in 'fill' and 'stroke'
@@ -673,28 +682,6 @@ var SVGGraphics = (function SVGGraphicsClosure(ctx) {
this.closePath();
this.fillStroke();
},
-
- rectangle: function SVGGraphics_rectangle(x, y, width, height) {
- var current = this.current;
- if (width < 0) {
- x = x + width;
- width = -width;
- }
- if (height < 0) {
- y = y + height;
- height = -height;
- }
- current.rect = document.createElementNS(NS, 'svg:rect');
- current.rect.setAttributeNS(null, 'x', x);
- current.rect.setAttributeNS(null, 'y', y);
- current.rect.setAttributeNS(null, 'fill', 'none');
- current.rect.setAttributeNS(null, 'width', width);
- current.rect.setAttributeNS(null, 'height', height);
- current.rect.setAttributeNS(null, 'stroke-width', current.lineWidth);
- // Saving a reference in current.element so that it can be addressed
- // in 'fill' or 'stroke'
- current.element = current.rect;
- },
};
return SVGGraphics;
})();
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/pdf.js.git
More information about the Pkg-javascript-commits
mailing list