4 ms·
One big problem with SVG is that the specification is so large that everyone implements a subset, so interoperability suffers. Lots of XML-based standards of a
by mjw1007 7y ago
One big problem with SVG is that the specification is so large that everyone implements a subset, so interoperability suffers.
Lots of XML-based standards of a similar age seem to have suffered from this. There was an idea that there'd be a standard for everything, and each XML-based standard would refer to others when it made sense rather than re-inventing the wheel. But too often the result was that in order to implement standard A fully you needed to implement all of B and C and D which your users didn't really care about, so in practice you ended up with an undocumented de-facto usable subset.
(Though for SVG I think the worst problem is that they didn't specify a fixed subset of CSS that should be supported, which isn't an XML-world thing.)
- unlinked_dll 7y agoA side issue is that non-trivial SVG authoring is painful to do by hand, so most people use some tool to do it. But the exported SVG will work on the rendering engine of the tool, not necessarily wherever it gets rendered downstream, and it can be difficult to know which features of your tool will result in rendering issues downstream. And sometimes the error is just missing content, others (like filters) often render the image completely black. It's like using a compiler that supports one version of an architecture and you need to learn what you can/can't do in the source code that will result in illegal instructions anywhere else. While Sketch is (imo) the best editor I've ever used for SVG it's also the worst about using weird SVG features that are poorly supported outside like, Safari and Chrome (I think they use the former).
- steerablesafe 7y agoSVG support is abysmal, most browsers don't even support linearRGB color interpolation in gradients (or elsewhere). https://www.w3.org/TR/SVG11/painting.html#ColorInterpolationProperty https://www.w3.org/TR/SVG11/painting.html#ColorInterpolation...