Skip to content

Commit f11d8b0

Browse files
Merge pull request #19972 from Snuffleupagus/issue-19971
Ignore empty paths when optimizing `constructPath` operations (issue 19971)
2 parents a8e05d8 + c5449a9 commit f11d8b0

File tree

4 files changed

+23
-12
lines changed

4 files changed

+23
-12
lines changed

src/core/operator_list.js

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -519,18 +519,20 @@ addState(
519519
const transform = argsArray[iFirstTransform];
520520
const [, [buffer], minMax] = args;
521521

522-
Util.scaleMinMax(transform, minMax);
523-
for (let k = 0, kk = buffer.length; k < kk; ) {
524-
switch (buffer[k++]) {
525-
case DrawOPS.moveTo:
526-
case DrawOPS.lineTo:
527-
Util.applyTransform(buffer, transform, k);
528-
k += 2;
529-
break;
530-
case DrawOPS.curveTo:
531-
Util.applyTransformToBezier(buffer, transform, k);
532-
k += 6;
533-
break;
522+
if (minMax) {
523+
Util.scaleMinMax(transform, minMax);
524+
for (let k = 0, kk = buffer.length; k < kk; ) {
525+
switch (buffer[k++]) {
526+
case DrawOPS.moveTo:
527+
case DrawOPS.lineTo:
528+
Util.applyTransform(buffer, transform, k);
529+
k += 2;
530+
break;
531+
case DrawOPS.curveTo:
532+
Util.applyTransformToBezier(buffer, transform, k);
533+
k += 6;
534+
break;
535+
}
534536
}
535537
}
536538
// Replace queue items.

test/pdfs/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -622,6 +622,7 @@
622622
!bug1815476.pdf
623623
!issue16021.pdf
624624
!bug1770750.pdf
625+
!issue19971.pdf
625626
!issue16063.pdf
626627
!issue19389.pdf
627628
!issue16067.pdf

test/pdfs/issue19971.pdf

1.65 MB
Binary file not shown.

test/test_manifest.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4142,6 +4142,14 @@
41424142
"lastPage": 1,
41434143
"type": "eq"
41444144
},
4145+
{
4146+
"id": "issue19971",
4147+
"file": "pdfs/issue19971.pdf",
4148+
"md5": "2eb897b3ef3342bfc5ad31886e7cd1fe",
4149+
"rounds": 1,
4150+
"lastPage": 1,
4151+
"type": "eq"
4152+
},
41454153
{
41464154
"id": "issue8702-text",
41474155
"file": "pdfs/issue8702.pdf",

0 commit comments

Comments
 (0)