mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-19 22:58:07 +02:00
Use Util.rectBoundingBox
more in the annotation code (PR 19713 follow-up)
By changing the return format of the various `pointsCallback` functions we can use the `Util.rectBoundingBox` helper in the `MarkupAnnotation.prototype._setDefaultAppearance` method as well, thus shortening the code slightly.
This commit is contained in:
parent
2da54ffb59
commit
29788eb0b8
1 changed files with 12 additions and 22 deletions
|
@ -1699,10 +1699,7 @@ class MarkupAnnotation extends Annotation {
|
|||
fillAlpha,
|
||||
pointsCallback,
|
||||
}) {
|
||||
let minX = Number.MAX_VALUE;
|
||||
let minY = Number.MAX_VALUE;
|
||||
let maxX = Number.MIN_VALUE;
|
||||
let maxY = Number.MIN_VALUE;
|
||||
const bbox = (this.data.rect = [Infinity, Infinity, -Infinity, -Infinity]);
|
||||
|
||||
const buffer = ["q"];
|
||||
if (extra) {
|
||||
|
@ -1732,14 +1729,8 @@ class MarkupAnnotation extends Annotation {
|
|||
]);
|
||||
|
||||
for (let i = 0, ii = pointsArray.length; i < ii; i += 8) {
|
||||
const [mX, MX, mY, MY] = pointsCallback(
|
||||
buffer,
|
||||
pointsArray.subarray(i, i + 8)
|
||||
);
|
||||
minX = Math.min(minX, mX);
|
||||
maxX = Math.max(maxX, MX);
|
||||
minY = Math.min(minY, mY);
|
||||
maxY = Math.max(maxY, MY);
|
||||
const points = pointsCallback(buffer, pointsArray.subarray(i, i + 8));
|
||||
Util.rectBoundingBox(...points, bbox);
|
||||
}
|
||||
buffer.push("Q");
|
||||
|
||||
|
@ -1771,7 +1762,6 @@ class MarkupAnnotation extends Annotation {
|
|||
|
||||
const appearanceDict = new Dict(xref);
|
||||
appearanceDict.set("Resources", resources);
|
||||
const bbox = (this.data.rect = [minX, minY, maxX, maxY]);
|
||||
appearanceDict.set("BBox", bbox);
|
||||
|
||||
this.appearance = new StringStream("/GS0 gs /Fm0 Do");
|
||||
|
@ -4162,8 +4152,8 @@ class LineAnnotation extends MarkupAnnotation {
|
|||
);
|
||||
return [
|
||||
points[0] - borderWidth,
|
||||
points[2] + borderWidth,
|
||||
points[7] - borderWidth,
|
||||
points[2] + borderWidth,
|
||||
points[3] + borderWidth,
|
||||
];
|
||||
},
|
||||
|
@ -4214,7 +4204,7 @@ class SquareAnnotation extends MarkupAnnotation {
|
|||
} else {
|
||||
buffer.push("S");
|
||||
}
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4278,7 +4268,7 @@ class CircleAnnotation extends MarkupAnnotation {
|
|||
} else {
|
||||
buffer.push("S");
|
||||
}
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4349,7 +4339,7 @@ class PolylineAnnotation extends MarkupAnnotation {
|
|||
);
|
||||
}
|
||||
buffer.push("S");
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4456,7 +4446,7 @@ class InkAnnotation extends MarkupAnnotation {
|
|||
}
|
||||
buffer.push("S");
|
||||
}
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4688,7 +4678,7 @@ class HighlightAnnotation extends MarkupAnnotation {
|
|||
`${points[4]} ${points[5]} l`,
|
||||
"f"
|
||||
);
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4813,7 +4803,7 @@ class UnderlineAnnotation extends MarkupAnnotation {
|
|||
`${points[6]} ${points[7] + 1.3} l`,
|
||||
"S"
|
||||
);
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4857,7 +4847,7 @@ class SquigglyAnnotation extends MarkupAnnotation {
|
|||
buffer.push(`${x} ${y + shift} l`);
|
||||
} while (x < xEnd);
|
||||
buffer.push("S");
|
||||
return [points[4], xEnd, y - 2 * dy, y + 2 * dy];
|
||||
return [points[4], y - 2 * dy, xEnd, y + 2 * dy];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
@ -4896,7 +4886,7 @@ class StrikeOutAnnotation extends MarkupAnnotation {
|
|||
`${(points[3] + points[7]) / 2} l`,
|
||||
"S"
|
||||
);
|
||||
return [points[0], points[2], points[7], points[3]];
|
||||
return [points[0], points[7], points[2], points[3]];
|
||||
},
|
||||
});
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue