Merge pull request #9673 from janpe2/svg-clip

SVG clip intersections and operators
This commit is contained in:
Tim van der Meij 2018-04-22 15:59:25 +02:00 committed by GitHub
commit c5c06bf5c4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -995,6 +995,8 @@ SVGGraphics = (function SVGGraphicsClosure() {
this.extraStack.forEach(function (prev) { this.extraStack.forEach(function (prev) {
prev.clipGroup = null; prev.clipGroup = null;
}); });
// Intersect with the previous clipping path.
clipPath.setAttributeNS(null, 'clip-path', current.activeClipUrl);
} }
current.activeClipUrl = 'url(#' + clipId + ')'; current.activeClipUrl = 'url(#' + clipId + ')';
@ -1069,6 +1071,7 @@ SVGGraphics = (function SVGGraphicsClosure() {
if (current.element) { if (current.element) {
current.element.setAttributeNS(null, 'fill', current.fillColor); current.element.setAttributeNS(null, 'fill', current.fillColor);
current.element.setAttributeNS(null, 'fill-opacity', current.fillAlpha); current.element.setAttributeNS(null, 'fill-opacity', current.fillAlpha);
this.endPath();
} }
}, },
@ -1092,6 +1095,8 @@ SVGGraphics = (function SVGGraphicsClosure() {
pf(current.dashPhase) + 'px'); pf(current.dashPhase) + 'px');
current.element.setAttributeNS(null, 'fill', 'none'); current.element.setAttributeNS(null, 'fill', 'none');
this.endPath();
} }
}, },