Hi all, I'm fixing issue 71367. I set a breakpoint at the line "case: GRADIENT_RADIAL" within the method "void ImplRenderer::createGradientAction( )" which is involved in the file"cppcanvas\source\mtfrenderer\implrenderer.cxx".( Line: 789 )
I find the gradient has been enlarged to fit into the rectangle's diagonal. the part of code: aTextureTransformation.translate( -0.5, -0.5 ); const double nScale( hypot(aBounds.getWidth(), aBounds.getHeight()) / nScaleX ); aTextureTransformation.scale( nScale, nScale ); aTextureTransformation.translate( 0.5, 0.5 ); I don't know the cause and it seems unreasonable in any case. So I remove the relevant code. after that I compare with the effect in normal mode and it seems that they are a bit different,but it looks much better now. I think the section of code is to enlarge the gradient tinily. Maybe here we can use the part of code within the case: GRADIENT_ELLIPTICAL. I don't know whether it is right. So can anybody else give me some suggestions? BestRegards Liujianli
