Skip to content
  • fmalita@chromium.org's avatar
    SVG Pattern pixelated on inline SVG with CSS transforms · ad156cf2
    fmalita@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=111587
    
    Reviewed by Dirk Schulze.
    
    Source/WebCore:
    
    When calculating the resolution for resource image buffers, we need to also consider CSS
    transforms. This patch updates calculateTransformationToOutermostSVGCoordinateSystem()
    (renamed to calculateTransformationToOutermostCoordinateSystem) to include the affine
    component from CSS transforms by walking the parent layer tree.
    
    Test: svg/custom/resources-css-scaled.html
    
    * rendering/svg/RenderSVGResourceClipper.cpp:
    (WebCore::RenderSVGResourceClipper::applyClippingToContext):
    * rendering/svg/RenderSVGResourceFilter.cpp:
    (WebCore::RenderSVGResourceFilter::applyResource):
    * rendering/svg/RenderSVGResourceGradient.cpp:
    (WebCore::createMaskAndSwapContextForTextGradient):
    (WebCore::clipToTextMask):
    * rendering/svg/RenderSVGResourceMasker.cpp:
    (WebCore::RenderSVGResourceMasker::applyResource):
    * rendering/svg/RenderSVGResourcePattern.cpp:
    (WebCore::RenderSVGResourcePattern::buildPattern):
    * rendering/svg/SVGRenderingContext.cpp:
    (WebCore::SVGRenderingContext::calculateScreenFontSizeScalingFactor):
    (WebCore::SVGRenderingContext::calculateTransformationToOutermostCoordinateSystem):
    * rendering/svg/SVGRenderingContext.h:
    (SVGRenderingContext):
    
    LayoutTests:
    
    * svg/custom/resources-css-scaled-expected.html: Added.
    * svg/custom/resources-css-scaled.html: Added.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145541 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    ad156cf2