Skip to content

Commit 5f46167

Browse files
authored
Merge branch 'master' into feature/add-xfa-support
2 parents fa65010 + e080935 commit 5f46167

File tree

1 file changed

+53
-50
lines changed

1 file changed

+53
-50
lines changed

src/modules/context2d.js

Lines changed: 53 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -1653,18 +1653,19 @@ import {
16531653
sheight * factorY
16541654
)
16551655
);
1656-
var pageArray = getPagesByPath.call(this, xRect);
1657-
var pages = [];
1658-
for (var ii = 0; ii < pageArray.length; ii += 1) {
1659-
if (pages.indexOf(pageArray[ii]) === -1) {
1660-
pages.push(pageArray[ii]);
1656+
1657+
if (this.autoPaging) {
1658+
var pageArray = getPagesByPath.call(this, xRect);
1659+
var pages = [];
1660+
for (var ii = 0; ii < pageArray.length; ii += 1) {
1661+
if (pages.indexOf(pageArray[ii]) === -1) {
1662+
pages.push(pageArray[ii]);
1663+
}
16611664
}
1662-
}
16631665

1664-
sortPages(pages);
1666+
sortPages(pages);
16651667

1666-
var clipPath;
1667-
if (this.autoPaging) {
1668+
var clipPath;
16681669
var min = pages[0];
16691670
var max = pages[pages.length - 1];
16701671
for (var i = min; i < max + 1; i++) {
@@ -1870,32 +1871,32 @@ import {
18701871
var lineWidth = Math.abs(oldLineWidth * this.ctx.transform.scaleX);
18711872
var lineJoin = this.lineJoin;
18721873

1873-
var origPath = JSON.parse(JSON.stringify(this.path));
1874-
var xPath = JSON.parse(JSON.stringify(this.path));
1875-
var clipPath;
1876-
var tmpPath;
1877-
var pages = [];
1878-
1879-
for (var i = 0; i < xPath.length; i++) {
1880-
if (typeof xPath[i].x !== "undefined") {
1881-
var page = getPagesByPath.call(this, xPath[i]);
1882-
1883-
for (var ii = 0; ii < page.length; ii += 1) {
1884-
if (pages.indexOf(page[ii]) === -1) {
1885-
pages.push(page[ii]);
1874+
if (this.autoPaging) {
1875+
var origPath = JSON.parse(JSON.stringify(this.path));
1876+
var xPath = JSON.parse(JSON.stringify(this.path));
1877+
var clipPath;
1878+
var tmpPath;
1879+
var pages = [];
1880+
1881+
for (var i = 0; i < xPath.length; i++) {
1882+
if (typeof xPath[i].x !== "undefined") {
1883+
var page = getPagesByPath.call(this, xPath[i]);
1884+
1885+
for (var ii = 0; ii < page.length; ii += 1) {
1886+
if (pages.indexOf(page[ii]) === -1) {
1887+
pages.push(page[ii]);
1888+
}
18861889
}
18871890
}
18881891
}
1889-
}
18901892

1891-
for (var j = 0; j < pages.length; j++) {
1892-
while (this.pdf.internal.getNumberOfPages() < pages[j]) {
1893-
addPage.call(this);
1893+
for (var j = 0; j < pages.length; j++) {
1894+
while (this.pdf.internal.getNumberOfPages() < pages[j]) {
1895+
addPage.call(this);
1896+
}
18941897
}
1895-
}
1896-
sortPages(pages);
1898+
sortPages(pages);
18971899

1898-
if (this.autoPaging) {
18991900
var min = pages[0];
19001901
var max = pages[pages.length - 1];
19011902
for (var k = min; k < max + 1; k++) {
@@ -1959,12 +1960,12 @@ import {
19591960
}
19601961
this.lineWidth = oldLineWidth;
19611962
}
1963+
this.path = origPath;
19621964
} else {
19631965
this.lineWidth = lineWidth;
19641966
drawPaths.call(this, rule, isClip);
19651967
this.lineWidth = oldLineWidth;
19661968
}
1967-
this.path = origPath;
19681969
};
19691970

19701971
/**
@@ -2289,30 +2290,32 @@ import {
22892290
var yTop = yBottom - textDimensions.h;
22902291

22912292
var pt = this.ctx.transform.applyToPoint(new Point(options.x, yBaseLine));
2292-
var decomposedTransformationMatrix = this.ctx.transform.decompose();
2293-
var matrix = new Matrix();
2294-
matrix = matrix.multiply(decomposedTransformationMatrix.translate);
2295-
matrix = matrix.multiply(decomposedTransformationMatrix.skew);
2296-
matrix = matrix.multiply(decomposedTransformationMatrix.scale);
22972293

2298-
var baselineRect = this.ctx.transform.applyToRectangle(
2299-
new Rectangle(options.x, yBaseLine, textDimensions.w, textDimensions.h)
2300-
);
2301-
var textBounds = matrix.applyToRectangle(
2302-
new Rectangle(options.x, yTop, textDimensions.w, textDimensions.h)
2303-
);
2304-
var pageArray = getPagesByPath.call(this, textBounds);
2305-
var pages = [];
2306-
for (var ii = 0; ii < pageArray.length; ii += 1) {
2307-
if (pages.indexOf(pageArray[ii]) === -1) {
2308-
pages.push(pageArray[ii]);
2294+
var clipPath, oldSize, oldLineWidth;
2295+
2296+
if (this.autoPaging) {
2297+
var decomposedTransformationMatrix = this.ctx.transform.decompose();
2298+
var matrix = new Matrix();
2299+
matrix = matrix.multiply(decomposedTransformationMatrix.translate);
2300+
matrix = matrix.multiply(decomposedTransformationMatrix.skew);
2301+
matrix = matrix.multiply(decomposedTransformationMatrix.scale);
2302+
2303+
var baselineRect = this.ctx.transform.applyToRectangle(
2304+
new Rectangle(options.x, yBaseLine, textDimensions.w, textDimensions.h)
2305+
);
2306+
var textBounds = matrix.applyToRectangle(
2307+
new Rectangle(options.x, yTop, textDimensions.w, textDimensions.h)
2308+
);
2309+
var pageArray = getPagesByPath.call(this, textBounds);
2310+
var pages = [];
2311+
for (var ii = 0; ii < pageArray.length; ii += 1) {
2312+
if (pages.indexOf(pageArray[ii]) === -1) {
2313+
pages.push(pageArray[ii]);
2314+
}
23092315
}
2310-
}
23112316

2312-
sortPages(pages);
2317+
sortPages(pages);
23132318

2314-
var clipPath, oldSize, oldLineWidth;
2315-
if (this.autoPaging) {
23162319
var min = pages[0];
23172320
var max = pages[pages.length - 1];
23182321
for (var i = min; i < max + 1; i++) {

0 commit comments

Comments
 (0)