[webkit-reviews] review denied: [Bug 53055] REGRESSION: Rendering artifacts on a rotated, pattern filled shape : [Attachment 105112] Same as last, plus a test

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Aug 24 22:40:20 PDT 2011


Dirk Schulze <krit at webkit.org> has denied Tim Horton
<timothy_horton at apple.com>'s request for review:
Bug 53055: REGRESSION: Rendering artifacts on a rotated, pattern filled shape
https://bugs.webkit.org/show_bug.cgi?id=53055

Attachment 105112: Same as last, plus a test
https://bugs.webkit.org/attachment.cgi?id=105112&action=review

------- Additional Comments from Dirk Schulze <krit at webkit.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=105112&action=review


because of the use of TransformationMatrix.

> Source/WebCore/ChangeLog:11
> +	   Introduce wkCGPatternCreateWithImageAndTransform, and make use of it

> +	   when tiling patterns in both directions. This helps to prevent
> +	   pixel-cracking along pattern tiling boundaries.

This won't have affect to other platforms. Is their a negative visual affect
left on other platforms? If so I'd like to have a more general solution, that
works for all ports.

> Source/WebCore/rendering/svg/SVGImageBufferTools.cpp:133
> +    TransformationMatrix::DecomposedType decomposition;
> +    TransformationMatrix tm = transform.toTransformationMatrix();
> +    tm.decompose(decomposition);
> +    decomposition.quaternionZ = 0.0;
> +    tm.recompose(decomposition);
> +    transform = tm.toAffineTransform();

Can't we port recompose and decompose to AffineTransform? If z = 0 anyway, it
shouldn't be a big problem, but avoids creating a TransformationMatrix. IIRC
AffineTransform uses floats while TransformationMatrix uses double (didn't
check it). If so, we have unnecessary transformations float --> double -->
float. Also TransformationMatrix needs 16 floating point numbers, while
AffineTransform just needs 6.

Btw. decomposition.quaternionZ = 0; .0 is superflous.


More information about the webkit-reviews mailing list