Opacity is represented as a number between 0 and 1 everywhere i SVG, kvsg2 and kcanvas, except in KRenderingStyle and KCanvasRenderingStyle where it's 0 - 255. The inconsistency in the API is confusing, and also results in lots of extra floating point divisions (opacity = opacity/255.0) that are bad for performance.
Created attachment 3385 [details] make opacity a float Changes to make opacity handling consistent in all of ksvg and kcanvas
Comment on attachment 3385 [details] make opacity a float Looks fine to me.
Created attachment 3408 [details] forgot a few changes the original file lacked a few diffs, this should be complete
Comment on attachment 3408 [details] forgot a few changes Assuming this is all of them, and svg still passes all the layout tets, yes this looks fine.
Created attachment 3412 [details] update tests truly sorry, forgot to attach the tests results that change opacity 127 -> 0.5 and 255 -> 1.0
Comment on attachment 3412 [details] update tests looks good.