From 530eb308aaeacc2f6ae71a8fbbb941c66abb5f25 Mon Sep 17 00:00:00 2001 From: "krit@webkit.org" Date: Mon, 3 Oct 2011 19:54:45 +0000 Subject: [PATCH] SVG Pattern tile pixelated on patternTransform https://bugs.webkit.org/show_bug.cgi?id=69261 Source/WebCore: Reviewed by Rob Buis. Scale the SVG pattern tile by the scale level of patternTransform to avoid pixelation. Test: svg/custom/pattern-scaled-pattern-space.svg * rendering/svg/RenderSVGResourcePattern.cpp: (WebCore::RenderSVGResourcePattern::applyResource): LayoutTests: Reviewed by Rob Buis. Add a new test to check that SVG pattern tiles are not pixelated on scaling with patternTransform. Updated two more pixel tests. Both changes are progressions. * platform/mac/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png: * platform/mac/svg/custom/non-scaling-stroke-expected.png: * svg/custom/pattern-scaled-pattern-space-expected.png: Added. * svg/custom/pattern-scaled-pattern-space-expected.txt: Added. * svg/custom/pattern-scaled-pattern-space.svg: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96530 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- LayoutTests/ChangeLog | 17 +++++++++++++++++ .../svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png | Bin 46028 -> 45953 bytes .../mac/svg/custom/non-scaling-stroke-expected.png | Bin 31023 -> 29506 bytes .../pattern-scaled-pattern-space-expected.png | Bin 0 -> 15189 bytes .../pattern-scaled-pattern-space-expected.txt | 8 ++++++++ .../svg/custom/pattern-scaled-pattern-space.svg | 8 ++++++++ Source/WebCore/ChangeLog | 14 ++++++++++++++ .../rendering/svg/RenderSVGResourcePattern.cpp | 3 +++ 8 files changed, 50 insertions(+) create mode 100644 LayoutTests/svg/custom/pattern-scaled-pattern-space-expected.png create mode 100644 LayoutTests/svg/custom/pattern-scaled-pattern-space-expected.txt create mode 100644 LayoutTests/svg/custom/pattern-scaled-pattern-space.svg diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog index a1e951d..925bcc8 100644 --- a/LayoutTests/ChangeLog +++ b/LayoutTests/ChangeLog @@ -1,3 +1,20 @@ +2011-10-03 Dirk Schulze + + SVG Pattern tile pixelated on patternTransform + https://bugs.webkit.org/show_bug.cgi?id=69261 + + Reviewed by Rob Buis. + + Add a new test to check that SVG pattern tiles are not pixelated on + scaling with patternTransform. + Updated two more pixel tests. Both changes are progressions. + + * platform/mac/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png: + * platform/mac/svg/custom/non-scaling-stroke-expected.png: + * svg/custom/pattern-scaled-pattern-space-expected.png: Added. + * svg/custom/pattern-scaled-pattern-space-expected.txt: Added. + * svg/custom/pattern-scaled-pattern-space.svg: Added. + 2011-10-03 Adam Barth Another round of updates after http://trac.webkit.org/changeset/96509. diff --git a/LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png b/LayoutTests/platform/mac/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png index 0da8067a34cc22f0b7c925c4bac5a819ce5aeb1a..d1b01bef0d00b1e21e8524d05004c66f26426f15 100644 GIT binary patch delta 16563 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 TRBP!8;`2gLL!n&GH1PicTg!S8 diff --git a/LayoutTests/platform/mac/svg/custom/non-scaling-stroke-expected.png b/LayoutTests/platform/mac/svg/custom/non-scaling-stroke-expected.png index a85ed29f4132fb4375c249d4bd85c735af7cb7ae..39186d1ee29d2b8591cd6b3434786c802683021f 100644 GIT binary patch literal 29506 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 B!E68k literal 31023 zcmafbcRUsT_y0Ao$Z8P6t&lP^v#%&Ck-f=Y7g<^NS_zfN%pOI<-WeCyh=?njYiD1Z zi_5)yujc#n`{(!1H6AaoabD*<&-09zNX-XI)RfGW004kmMOje`03ZPY0K^6qa( zc!#(VzTEJ-xjg9k`NaY6qX?T@JP@~;+C+Gm57jtn5fMH zURZ@N!@7flf~Jas0!Y){)z-n;1_1CO3e!P4otM9GEavjD_bP>v6HS><%vBY`eEYit zVt9H>r?V*bs=G1P!YV^9V(4|Q%G`*#+3z=YTtoxCp?joHOzwoVuvh2OQ+` zp&nTO#SuT+U}L=&|Dz{mPYP4|s#1VY@!)Btl+l|d8;p-B4bKrrNKa+oX!oR;`Z2P- z8ZGg_*9TEa%Olfjcr^el%GVR9{#m=5vmYF)d^;ZVSW7l-_(l9ME6~Bk_DcsHTq7p0 z?%R64Wp>(wJ(?JJ`Y!B2`J`;~m1ZiYLb-dNqcSir2jylT&AeM^eI|4HlIZS%#l>po zj|Za77tHC@ujlAI9_6RrdQ*hg+g1&6i@Dut{V2%8NLgd}zRN*vI2n{{_oit*l9Rm-Nw_5>4b6xrUi- zxWD6vhq_rn!hm<2zEWa=uU~!2Dzn_Ge$uUl5YgyXkCLM;KJ$ccNjF|zX#1hNv!eFY z%jlN)RHk#Fl*}wYlD~4uqcHM?xL#_K9o|v-X#G=t+=4Dv!wj>9v+HiPn!Rz0%lrA_ zmB^$v{;k*%wS1~s3rIUfdcw0CeUR6O9D^1XDfJiuQ#oTF_`Sfhn1}I9-}-bS_XC@6 zT8pID(6}B(quOzdbNkO1Gr5TcoTodIYa!Z?H|Vl$a$P)%h#4EdLpQ5joZiB2<46sp z^BD@YL^DD4M3=q8{n(anyy;I&?3U09=go|(UGB8h`lg9e(9#;_9JWzoC{Nb4T=pJG z?q_wmoGo!@zxBPUP26Ge7JUi6L<@^8&>Dq3U>*uiI&^KS$KP%8c@YT!fB-6r@;W|5 zs}pC^E(}&4Yzeb~K&dP@DY*I15YN8)kag?UtuLGc4IErqUpQB$?8SBh49!3dm#i|r zC$(}ud^o@%a7$o1wv8Ggx}tsIaTMj%o0R;#oq%%O(eBoLU5$M~ZCx2{IBpDSFsQpf zS-bC_id@WS@Tzk(5*C;V0}xYyg8qE$27w{8CZTHoeslVrArUd1EX99@fqJcoNkKCA zy2I$e03y=gA3=bp$UhVPoM872fJiy|p~sa!BTmPH05igW*E=01!vzNPSq+#_{GEs} zi~@Xc_U9bGKfuvv=z?}Hi89{#w;tehTO|MAZDq;cMAZ9UJsg%P9&#=f6)nsOJS@XA zOdPqHN3UR~4Iq&G3fow;9&))0iMpkhe`HpqtY+KD6<5X?Cy+Yd;(>T9U2`0(q;ZQX=&{H`(W0d(2vhY2XdkJNAamBlgD@Q!BZMXFxi? z2k2>{hy>%fxa%ex7E_&rXtMSSzAzMe8CP$nw9j`SBwqMps0(fB)epWo^`Xk!vYHIU zBWrL)c!3ccnggiUqQ4DW-73Qet!dYYG2Z

)_6F5toB5lw)gx!)a@Gfb%mJcYx!} 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 literal 0 HcmV?d00001 diff --git a/LayoutTests/svg/custom/pattern-scaled-pattern-space-expected.txt b/LayoutTests/svg/custom/pattern-scaled-pattern-space-expected.txt new file mode 100644 index 0000000..a77bc02 --- /dev/null +++ b/LayoutTests/svg/custom/pattern-scaled-pattern-space-expected.txt @@ -0,0 +1,8 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x600 + RenderSVGRoot {svg} at (0,0) size 200x200 + RenderSVGHiddenContainer {defs} at (0,0) size 0x0 + RenderSVGResourcePattern {pattern} [id="pattern"] [patternUnits=userSpaceOnUse] [patternContentUnits=userSpaceOnUse] [patternTransform={m=((40.00,0.00)(0.00,40.00)) t=(0.00,0.00)}] + RenderSVGPath {circle} at (0,0) size 5x5 [fill={[type=SOLID] [color=#00FF00]}] [cx=2.50] [cy=2.50] [r=2.50] + RenderSVGPath {rect} at (0,0) size 200x200 [fill={[type=PATTERN] [id="pattern"]}] [x=0.00] [y=0.00] [width=200.00] [height=200.00] diff --git a/LayoutTests/svg/custom/pattern-scaled-pattern-space.svg b/LayoutTests/svg/custom/pattern-scaled-pattern-space.svg new file mode 100644 index 0000000..6599992 --- /dev/null +++ b/LayoutTests/svg/custom/pattern-scaled-pattern-space.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index 55d615d..208c8fe 100644 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,17 @@ +2011-10-03 Dirk Schulze + + SVG Pattern tile pixelated on patternTransform + https://bugs.webkit.org/show_bug.cgi?id=69261 + + Reviewed by Rob Buis. + + Scale the SVG pattern tile by the scale level of patternTransform to avoid pixelation. + + Test: svg/custom/pattern-scaled-pattern-space.svg + + * rendering/svg/RenderSVGResourcePattern.cpp: + (WebCore::RenderSVGResourcePattern::applyResource): + 2011-10-03 Jer Noble Enable WEB_AUDIO by default in the WebKit/mac port. diff --git a/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp b/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp index 2f7ff52..4db563a 100644 --- a/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp +++ b/Source/WebCore/rendering/svg/RenderSVGResourcePattern.cpp @@ -122,6 +122,9 @@ bool RenderSVGResourcePattern::applyResource(RenderObject* object, RenderStyle* FloatRect absoluteTileBoundaries = absoluteTransformIgnoringRotation.mapRect(tileBoundaries); FloatRect clampedAbsoluteTileBoundaries; + // Scale the tile size to match the scale level of the patternTransform. + absoluteTileBoundaries.scale(m_attributes.patternTransform().xScale(), m_attributes.patternTransform().yScale()); + // Build tile image. OwnPtr tileImage = createTileImage(m_attributes, tileBoundaries, absoluteTileBoundaries, tileImageTransform, clampedAbsoluteTileBoundaries); if (!tileImage) -- 2.7.4