GNOME Bugzilla – Bug 338385
Support of SVG 1.2 "comp-op" property
Last modified: 2017-12-13 17:28:14 UTC
It's a feature used in current cairo SVG backend for support of cairo operators without using image fallbacks. http://www.w3.org/TR/2004/WD-SVG12-20041027/rendering.html Following operations are used: clear, src, src-over, src-in, src-out, src-atop, dst, dst-over, dst-in, dst-out, dst-atop, xor, plus, color-dodge I'm not sure about color-dodge, which would be used for CAIRO_OPERATOR_SATURATE.
Created attachment 79993 [details] [review] Preliminary patch Here's a preliminary patch for comp-op support, mainly for comments before finishing it. We must not let QtSVG be the only open source SVG implementation supporting extended blend modes for too long... :)
Created attachment 80077 [details] [review] Improved patch This one should be better.
Created attachment 80078 [details] Porter-Duff test file
Created attachment 80080 [details] Simple xor operator on text test file
It's a bit hard to review this patch because of the formatting changes. I know - librsvg's formatting is an inconsistent mess. However, I trust you Emmanuel, so please commit this to SVN.
Patch commited. Support is not complete yet, it lacks extended blend modes. We need support in cairo first.
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/librsvg/issues/7.