Merge pull request #8808 from janpe2/issue8741

Fix color of image masks inside uncolored patterns
This commit is contained in:
Jonas Jenwald 2017-09-12 14:27:56 +02:00 committed by GitHub
commit f2618eb2e4
3 changed files with 17 additions and 2 deletions

View File

@ -360,7 +360,7 @@ var TilingPattern = (function TilingPatternClosure() {
var graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx); var graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx);
graphics.groupLevel = owner.groupLevel; graphics.groupLevel = owner.groupLevel;
this.setFillAndStrokeStyleToContext(tmpCtx, paintType, color); this.setFillAndStrokeStyleToContext(graphics, paintType, color);
this.setScale(width, height, xstep, ystep); this.setScale(width, height, xstep, ystep);
this.transformToScale(graphics); this.transformToScale(graphics);
@ -401,17 +401,23 @@ var TilingPattern = (function TilingPatternClosure() {
}, },
setFillAndStrokeStyleToContext: setFillAndStrokeStyleToContext:
function setFillAndStrokeStyleToContext(context, paintType, color) { function setFillAndStrokeStyleToContext(graphics, paintType, color) {
let context = graphics.ctx, current = graphics.current;
switch (paintType) { switch (paintType) {
case PaintType.COLORED: case PaintType.COLORED:
var ctx = this.ctx; var ctx = this.ctx;
context.fillStyle = ctx.fillStyle; context.fillStyle = ctx.fillStyle;
context.strokeStyle = ctx.strokeStyle; context.strokeStyle = ctx.strokeStyle;
current.fillColor = ctx.fillStyle;
current.strokeColor = ctx.strokeStyle;
break; break;
case PaintType.UNCOLORED: case PaintType.UNCOLORED:
var cssColor = Util.makeCssRgb(color[0], color[1], color[2]); var cssColor = Util.makeCssRgb(color[0], color[1], color[2]);
context.fillStyle = cssColor; context.fillStyle = cssColor;
context.strokeStyle = cssColor; context.strokeStyle = cssColor;
// Set color needed by image masks (fixes issues 3226 and 8741).
current.fillColor = cssColor;
current.strokeColor = cssColor;
break; break;
default: default:
throw new FormatError(`Unsupported paint type: ${paintType}`); throw new FormatError(`Unsupported paint type: ${paintType}`);

View File

@ -0,0 +1 @@
http://soap.plansystem.dk/pdfarchive/20_1057347_APPROVED_1193694109382.pdf

View File

@ -707,6 +707,14 @@
"lastPage": 1, "lastPage": 1,
"type": "load" "type": "load"
}, },
{ "id": "pr8808",
"file": "pdfs/pr8808.pdf",
"md5": "bdac6051a98fd8dcfc5344b05fed06f4",
"rounds": 1,
"link": true,
"lastPage": 1,
"type": "eq"
},
{ "id": "issue5599", { "id": "issue5599",
"file": "pdfs/issue5599.pdf", "file": "pdfs/issue5599.pdf",
"md5": "529a4a9409ac024aeb57a047210280fe", "md5": "529a4a9409ac024aeb57a047210280fe",